Hi Dan,
I am guessing that the issue here is that you have AD enabled on your Community and therefore you will need to authenticate against AD in your request with code similar to below:
// Create the Request
HttpWebRequest request = WebRequest.Create(requestUrl) as HttpWebRequest;
request.Headers.Add("Rest-User-Token", adminKeyBase64);
// Set the Windows Authentication credentials
request.Credentials = new NetworkCredential(ConfigurationManager.AppSettings["winAuthUsername"], ConfigurationManager.AppSettings["winAuthPassword"], ConfigurationManager.AppSettings["winAuthDomain"]);
I hope this helps
Adam