Created
July 20, 2016 05:36
-
-
Save graut/1d1a0935588c5f83d92c4842af9f6569 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
/* | |
* Created by SharpDevelop. | |
* User: ghanshyam | |
* Date: 13-07-2016 | |
* Time: 17:10 | |
* | |
* To change this template use Tools | Options | Coding | Edit Standard Headers. | |
*/ | |
using System; | |
using System.Net; | |
using System.Web; | |
using System.IO; | |
using System.Security.Cryptography.X509Certificates; | |
namespace Test1 | |
{ | |
class Program | |
{ | |
public Program() | |
{ | |
} | |
/*******Please insert your Domain Name and email Api Key here*********/ | |
const string domain = "your_domain"; | |
const string email = "your_email"; | |
const string apiKey = "your_api_key"; | |
/***************************************************************/ | |
const string domainUrl = "https://" + domain + ".agilecrm.com/dev/api/"; | |
private static string agileCRM(string nextUrl, string method, string data, string contenttype) | |
{ | |
try { | |
string url = domainUrl + nextUrl; | |
//Console.WriteLine(url); | |
String encoded = System.Convert.ToBase64String(System.Text.Encoding.GetEncoding("ISO-8859-1").GetBytes(email + ":" + apiKey)); | |
HttpWebRequest request = WebRequest.Create(url) as HttpWebRequest; | |
if (!string.IsNullOrEmpty(data)) | |
request.ContentLength = data.Length; | |
request.Method = method; | |
request.ContentType = contenttype; | |
request.Accept = "application/json"; | |
request.Headers.Add("Authorization", "Basic " + encoded); | |
string result = null; | |
switch (method) { | |
case "GET": | |
using (HttpWebResponse response = request.GetResponse() as HttpWebResponse) { | |
Stream dataStream = response.GetResponseStream(); | |
StreamReader reader = new StreamReader(dataStream); | |
result = reader.ReadToEnd(); | |
reader.Close(); | |
dataStream.Close(); | |
response.Close(); | |
} | |
return result; | |
break; | |
case "POST": | |
using (Stream webStream = request.GetRequestStream()) | |
using (StreamWriter requestWriter = new StreamWriter(webStream, System.Text.Encoding.ASCII)) { | |
requestWriter.Write(data); | |
} | |
using (HttpWebResponse response = request.GetResponse() as HttpWebResponse) { | |
Stream dataStream = response.GetResponseStream(); | |
StreamReader reader = new StreamReader(dataStream); | |
result = reader.ReadToEnd(); | |
reader.Close(); | |
dataStream.Close(); | |
response.Close(); | |
} | |
return result; | |
break; | |
case "PUT": | |
using (Stream webStream = request.GetRequestStream()) | |
using (StreamWriter requestWriter = new StreamWriter(webStream, System.Text.Encoding.ASCII)) { | |
requestWriter.Write(data); | |
} | |
using (HttpWebResponse response = request.GetResponse() as HttpWebResponse) { | |
Stream dataStream = response.GetResponseStream(); | |
StreamReader reader = new StreamReader(dataStream); | |
result = reader.ReadToEnd(); | |
reader.Close(); | |
dataStream.Close(); | |
response.Close(); | |
} | |
return result; | |
break; | |
case "DELETE": | |
using (HttpWebResponse response = request.GetResponse() as HttpWebResponse) { | |
Stream dataStream = response.GetResponseStream(); | |
StreamReader reader = new StreamReader(dataStream); | |
result = reader.ReadToEnd(); | |
reader.Close(); | |
dataStream.Close(); | |
response.Close(); | |
} | |
return result; | |
break; | |
default: | |
return "nothing"; | |
break; | |
} | |
} catch (Exception e) { | |
return "Exception caught!!!\n" + e.ToString(); | |
} | |
} | |
static void Main(string[] args) | |
{ | |
// Get contact by Email | |
string result1 = agileCRM("contacts/search/email/samson@walt.ltd", "GET", null,"application/json"); | |
Console.WriteLine("Done"); | |
} | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment