Here is what I would do since you are building your own service. It does not make sense to build a Web API service that calls a WCF service that calls eConnect to GP. That is a lot of overhead. You can go straight to GP for data pulls, and you can use eConnect to push data back.
This way you get flexibility for pulling out information, and GP's built in business logic when integrating data, so you don't break anything.
First, get the eConnect libraries, and put them into your project. Read up on a couple samples for the eConnect process of sending data. This is not hard, and there are enough integrations to include nearly everything you will need for a web API server accepting information.
Second, install the EntityFramework 5 libraries (these are probably already in your project if using web API).
Create your context using a code-first approach
Create a class for each table you want to get data from in GP
Use a trusted connection. You have to with eConnect, and it makes sense with EF too
Make sure you have some kind of authentication / token system in your Web API to protect your service layer, but I'm sure you've done that.
Set up a repository to make your calls to GP using EF for select queries, and use the eConnect process to send information back.
Both the physical names in the GP tables and the eConnect objects have the same properties, so you can use reflection to map the eConnect object fields to your custom object properties.
Here is a link to a sample class I would use to map the GL20000 table (note, I primarily use the DEX_ROW_ID for all relationship mapping to avoid EF issues with foreign key constraints):
gist.github.com/.../6275010
this shows an example of the context I created. The connection string passed should be a trusted connection.
gist.github.com/.../6299734
and here is a sample repository that uses the context to call GP, get the data, and put it into a collection.
gist.github.com/.../6299796
I like this for retrieving data because I have complete control over the view data. The nice thing with EF code first here is to add more tables, I simply create the object with the fields mapped to the SQL table fields, add it to the context, and create my repository.
The database calls become one-liners. The eConnect process is a little more complicated than this, but you also get quite a large amount of validation from GP, and it is worth knowing this process. I hope this gets you started. If you need more help, send me your contact information to my email (in my profile).