I have Web API with OWIN Authentication in Web MVC.
I'm using `<authentication>` in Web.Config for my Web MVC so it's redirecting to login page.

```
<authentication mode="Forms">
    <forms name="WEB.AUTH" loginUrl="~/login" domain="" protection="All" 
    timeout="43200" path="/" requireSSL="false" slidingExpiration="true" />
</authentication>

```

I'm using `[System.Web.Http.Authorize]` attribute to authorize my Web API. But somehow, the API redirecting to login page same like my MVC app because of above configuration.

what I want to do is keep redirecting function for the Web MVC but returning 401 for Web API. How can I achieve this? should I create a custom authorization attribute for Web API?

**--EDIT--**

I found the answer from this post [SuppressDefaultHostAuthentication in WebApi.Owin also suppressing authentication outside webapi](https://stackoverflow.com/questions/21878446/suppressdefaulthostauthentication-in-webapi-owin-also-suppressing-authentication)

So I just add a few lines into my `Startup.cs`. I had all my controllers configured with a "api" prefix route.

```
HttpConfiguration config = new HttpConfiguration();
//..some OWIN configuration
app.Map("/api", inner =>
{
  inner.UseWebApi(config);
});

```

make sure you put `app.Map()` after Web Api Configuration lines. Otherwise, it will give error to MVC application.