November Happy Hour will be moved to Thursday December 5th.

Rejaie
May 10, 2017
  9881
(6 votes)

Episerver CMS + Web API

During my last Episerver project, I needed to stand up a Web API endpoint to grab data from an external source. Sounds easy enough, right? Actually, it is in Episerver. One of Episerver’s greatest strengths is the code base works really well with existing ASP.NET features like Web API. In the scenario above, you can easily wire up a Web API Controller just like you would in any MVC web application. Here are the steps I followed to set up a very simple Web API controller in Episerver:

 

  1. Open your Episerver solution in Visual Studio
  2. Create an API controller named DummyApiController under the Controllers folder. From here, add an action to do something simple, such as returning the number 5.

    Image Step2-1.png

    Image Step2-2.png

  3. Create a code file named WebApiConfig.cs. This fill will contain a method called Register. This method will register the route to our custom API.

    Image Step3-1.png

  4. Add code to register your route with the application in the WebApiConfig.cs file.Image Step4-1.png
  5. Next, call the register method in the Application_Start method. You can find this method in the global.asax.cs fileImage Step5-1.png
  6. Fire up your app, and navigate to your API endpoint (http://host/app-api/getdummynumber). The request will return the number 5!Image Step6-1.png 

 

That’s it. Very, very simple. However, in this case, you will need to do a lot more in terms of security and data input validation. Hope this is helpful to you.

May 10, 2017

Comments

Robert Domingo
Robert Domingo Jan 17, 2018 08:44 PM

how come I couldn't make it work :(

Darren Sunderland
Darren Sunderland Jul 20, 2018 03:23 PM

This works when running on a development machine but when the solution is published to the DXC environment this returns a 404 error everytime.  Is there something further required to get this running in the DXC?

Sam Brooks
Sam Brooks Nov 17, 2020 06:36 PM

thanks Rejaie,

i was struggling to set up an api on an episerver website and this guide was exactly waht i was lookin for. Thanks for keeping it simple, some other examples i found were overly complicated and i was struggling to work out which part i had done wrong.

Sam

Please login to comment.
Latest blogs
Optimizely SaaS CMS + Coveo Search Page

Short on time but need a listing feature with filters, pagination, and sorting? Create a fully functional Coveo-powered search page driven by data...

Damian Smutek | Nov 21, 2024 | Syndicated blog

Optimizely SaaS CMS DAM Picker (Interim)

Simplify your Optimizely SaaS CMS workflow with the Interim DAM Picker Chrome extension. Seamlessly integrate your DAM system, streamlining asset...

Andy Blyth | Nov 21, 2024 | Syndicated blog

Optimizely CMS Roadmap

Explore Optimizely CMS's latest roadmap, packed with developer-focused updates. From SaaS speed to Visual Builder enhancements, developer tooling...

Andy Blyth | Nov 21, 2024 | Syndicated blog

Set Default Culture in Optimizely CMS 12

Take control over culture-specific operations like date and time formatting.

Tomas Hensrud Gulla | Nov 15, 2024 | Syndicated blog

I'm running Optimizely CMS on .NET 9!

It works 🎉

Tomas Hensrud Gulla | Nov 12, 2024 | Syndicated blog

Recraft's image generation with AI-Assistant for Optimizely

Recraft V3 model is outperforming all other models in the image generation space and we are happy to share: Recraft's new model is now available fo...

Luc Gosso (MVP) | Nov 8, 2024 | Syndicated blog