/
Send requests with C#
Send requests with C#
[ 1 Introduction ] [ 2 Parameters ]
Introduction
After authorizing API requests as required and setting up a C# environment, you can use the script below to send API requests using C#:
using System.Security.Cryptography;
using System.Text;
namespace Devo
{
class Program
{
public void callDevoAPI()
{
String key = "YOUR-DEVO-API-KEY-GOES-HERE";
String secret = "YOUR-DEVO-API-SECRET-GOES-HERE";
String cloud = "us";
String query = "from box.unix select *";
String body = "" +
"{\"from\": \"2h\", " +
"\"to\": \"now\", " +
"\"query\":\"" + query + "\"," +
"\"limit\": 10, " +
"\"mode\": { \"type\":\"csv\"}}";
var httpclient = new HttpClient();
httpclient.Timeout = TimeSpan.FromMinutes(9999);
String queryEndpoint = "https://apiv2-" + cloud + ".devo.com/search/query";
var webRequest = new HttpRequestMessage(HttpMethod.Post, queryEndpoint)
{
Content = new StringContent(body, Encoding.UTF8, "application/json")
};
String unixTimestamp = (DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1))).TotalMilliseconds.ToString();
unixTimestamp = unixTimestamp.Substring(0, unixTimestamp.IndexOf("."));
String data = key + body + unixTimestamp;
byte[] byteArrayData = Encoding.UTF8.GetBytes(data);
byte[] byteArraySecret = Encoding.UTF8.GetBytes(secret);
var hash = new HMACSHA256(byteArraySecret);
byte[] byteSigned = hash.ComputeHash(byteArrayData);
var hexString = BitConverter.ToString(byteSigned);
String sign = hexString.Replace("-", "").ToLower();
httpclient.DefaultRequestHeaders.Add("x-logtrust-apikey", key);
httpclient.DefaultRequestHeaders.Add("x-logtrust-timestamp", unixTimestamp);
httpclient.DefaultRequestHeaders.Add("x-logtrust-sign", sign);
try
{
var response = httpclient.Send(webRequest);
Console.WriteLine(response.Content.ReadAsStringAsync().Result);
}
catch (Exception ex)
{
Console.WriteLine("Exception occured: " + ex.Message);
}
}
public static void Main(string[] args)
{
Program p = new Program();
p.callDevoAPI();
}
}
}
Parameters
Replace the following parameters in the script using your own information:
| Enter the API key of your Devo domain. To get it, access Devo and go to Administration → Credentials → Access Keys. Learn more in this article. |
---|---|
| Enter the API secret of your Devo domain. To get it, access Devo and go to Administration → Credentials → Access Keys. Learn more in this article. |
| Specify the Devo cloud of your domain. The available options are |
| Enter the query you want to run. |
| Specify the body of your requests, following the format of the script above. |
, multiple selections available,
Related content
Send requests with Postman
Send requests with Postman
More like this
Running queries with the Query API
Running queries with the Query API
More like this
Send requests with Postman
Send requests with Postman
More like this
Query API requests
Query API requests
More like this
Query API
Query API
More like this
Forward response to email
Forward response to email
More like this