title: Unable to call onesignal api within office but working from external wifi
body: <p>I am using C# to call OneSignal Create Notifications API. Its working from my home but when i try to send it from my office, it gives a 400 BAD REQUEST.
  The error that i get is </p>
  
  <pre><code>The error that comes is Please include a case-sensitive header of 
  Authorization:   Basic &lt;YOUR-REST-API-KEY-HERE&gt; with a valid REST API key."],
  "reference":["https://documentation.onesignal.com/docs/accounts-and-keys#section-keys-ids"]
  </code></pre>
  
  <p>Also, in office network, when i send it from OneSignal Dashboard it works.</p>
  
  <p>Is it a firewall issue?</p>
  
  <p>Tested with POSTMAN and got the same results. POSTMAN working outside office network and giving 400 Bad Request inside office network.</p>
  
  <pre><code> using System.IO;
   using System.Net;
    using System.Text;
  
    var request = WebRequest.Create("https://onesignal.com/api/v1/notifications") as HttpWebRequest;
  
  request.KeepAlive = true;
  request.Method = "POST";
  request.ContentType = "application/json; charset=utf-8";
  
   request.Headers.Add("authorization", "Basic NGEwMGZmMjItY2NkNy0xMWUzLTk5ZDUtMDAwYzI5NDBlNjxx");
  
  var serializer = new JavaScriptSerializer();
  var obj = new { app_id = "5eb5a37e-b458-11e3-ac11-000c2940e6xx",
             contents = new { en = "English Message" },
             include_player_ids = new string[] {"all"} };
  
  
  
  var param = serializer.Serialize(obj);
  byte[] byteArray = Encoding.UTF8.GetBytes(param);
  
  string responseContent = null;
  
   try {
      using (var writer = request.GetRequestStream()) {
         writer.Write(byteArray, 0, byteArray.Length);
      }
  
     using (var response = request.GetResponse() as HttpWebResponse) {
     using (var reader = new StreamReader(response.GetResponseStream())) {
           responseContent = reader.ReadToEnd();
       }
     }
  }
  catch (WebException ex) {
     System.Diagnostics.Debug.WriteLine(ex.Message);
     System.Diagnostics.Debug.WriteLine(new    StreamReader(ex.Response.GetResponseStream()).ReadToEnd());
     }
      System.Diagnostics.Debug.WriteLine(responseContent);
  </code></pre>