using System; using System.IO; using System.Text; public static void Main() { //-- our URL for creating a new pager message --// string my_url = "http://api.v4.swiftreach.com/api/Messages/Pager/Create"; //-- our API KEY credentials --// string API_KEY = "12345"; UriBuilder my_uri = new UriBuilder(my_url); my_uri.Port = 80; System.Net.HttpWebRequest MyRequest = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(my_uri.Uri); //-- Create Email is a POST --// MyRequest.Method = "POST"; //-- Append the API KEY header --// MyRequest.Headers.Add("SwiftAPI-Key", API_KEY); //-- build the Email_Message XML to POST --// string create_email = "<Pager_Message xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema/SwiftReach.Swift911.Core.Messages.Pager\">" + "<Name>API Pager</Name>" + "<Description>created by api</Description>" + "<From>SwiftAPI</From>" + "<DefaultSpokenLanguage>English</DefaultSpokenLanguage>" + "<Body>" + "<Pager_Content>" + "<SpokenLanguage>English</SpokenLanguage>" + "<Subject>my subject</Subject>" + "<Body>" + "<PAGER_TEXT_SOURCE xsi:type=\"PAGER_TEXT_SOURCE_TEXT\">" + "<Text>this is the body of my message</Text>" + "<TextType>pager_text_source_text</TextType>" + "</PAGER_TEXT_SOURCE>" + "</Body>" + "</Pager_Content>" + "</Body>" + "</Pager_Message>"; //-- POST the xml --// byte[] bytes = System.Text.Encoding.ASCII.GetBytes(create_email); MyRequest.ContentLength = bytes.Length; MyRequest.ContentType = "text/xml; encoding='utf-8'"; Stream s = MyRequest.GetRequestStream(); s.Write(bytes, 0, bytes.Length); s.Close(); try { //-- get the response --// System.Net.HttpWebResponse MyResponse = (System.Net.HttpWebResponse)MyRequest.GetResponse(); string message = String.Format("Received HTTP {0}", MyResponse.StatusCode); using (StreamReader sr = new StreamReader(MyResponse.GetResponseStream())) { //-- Create was successful --// string response_body = sr.ReadToEnd(); System.Console.WriteLine("SUCCESS - " + response_body); } } catch (System.Net.WebException webEx) { //-- Create failed --// using (StreamReader sr = new StreamReader(webEx.Response.GetResponseStream())) { string response_body = sr.ReadToEnd(); string error_message = String.Format("Received HTTP {0} : {1}", webEx.Status.ToString(), response_body); System.Console.WriteLine("ERROR - " + error_message); } } }