Existing Web App - create an API for customers - how?

I have a asp.net 4.5 webforms app with a SQL Server 2014 backend

Customer(s) wants to access his data via an API
We currently don't have an API so need to create one

The web app uses 3 tier's:
1 Web
2 Business Logic
3 Data Access Layer


Would I use the business logic layer for the API or just deal direct with DB?
Can someone give me an idiots guide on how to get started using .net, and rough outline of architecture
I also have no idea about securing it?
Any advice appreciated on how to get started speccing it out
websssCEOAsked:
Who is Participating?

[Product update] Infrastructure Analysis Tool is now available with Business Accounts.Learn More

x
I wear a lot of hats...

"The solutions and answers provided on Experts Exchange have been extremely helpful to me over the last few years. I wear a lot of hats - Developer, Database Administrator, Help Desk, etc., so I know a lot of things but not a lot about one thing. Experts Exchange gives me answers from people who do know a lot about one thing, in a easy to use platform." -Todd S.

käµfm³d 👽Commented:
Would I use the business logic layer for the API...
Yes.

...or just deal direct with DB?
NO!

While you could expose some web services via Web Forms (crudely), or even through old ASMX services, I would suggest going with Web API. I find it a bit easier to write. If you stick to CRUD as best you can, then writing the web service should be straightforward. You can find details on writing Web API on the official ASP.NET site.

As far as securing it, there are multiple approaches. Basic authentication via username and password is one way--just be sure to operate over SSL so that usernames and passwords aren't send in clear text over the wire. You could also do certificate-based auth or even token-based. This would be a decision you need to make. The ASP.NET site should also discuss security. I believe Microsoft is now pushing their ASP.NET Identity for security. I haven't used it yet, so I cannot really comment on it.

Experts Exchange Solution brought to you by

Your issues matter to us.

Facing a tech roadblock? Get the help and guidance you need from experienced professionals who care. Ask your question anytime, anywhere, with no hassle.

Start your 7-day free trial
It's more than this solution.Get answers and train to solve all your tech problems - anytime, anywhere.Try it for free Edge Out The Competitionfor your dream job with proven skills and certifications.Get started today Stand Outas the employee with proven skills.Start learning today for free Move Your Career Forwardwith certification training in the latest technologies.Start your trial today
ASP.NET

From novice to tech pro — start learning today.