There is no concept of apikey in oauth. Rather, you have different flows where the client credential flow is the one you should be interested in. The flow consists in sending only the client_id
and client_secret
from the client application to the token endpoint of the identity provider and thus claiming the token without any user interaction.
http://aaronparecki.com/articles/2012/07/29/1/oauth2-simplified
(Aaron has this flow documented as "Application Access")
If you decide to go with DotnetOpenAuth, the flow is possible to implement for the identity provider, the resource server and the client application. First, download their examples, try to learn as much as possible and then come back with specific questions.