In my current project there is a need to schedule a method to run at set intervals e.g. once a week, and currently this is done via a windows service creating an HttpClient and
This is not something you want the Web API to do, and I don't think it does. Something about single responsibilities.
What is wrong with the service approach? You may also want to take a look at Windows Task Scheduler.