Проблема с доступом к VirusTotal API (403)
Пытаюсь отправить POST запрос к VtAPI на сканирование файла, но кидает ошибку 403
Ключ точно правильный, несколько раз проверял.
Вот страница с примером использования API ключа https://developers.virustotal.com/v2.0/reference/file-scan
Вот так отправляю API запрос:
static async Task Main(string[] args)
{
var apiKey = "";
var filePath = "C:/exmpl/exmpl.jpg";
var result = await ScanFileWithVirusTotal(apiKey, filePath);
Console.WriteLine(result);
}
static async Task<string> ScanFileWithVirusTotal(string apiKey, string filePath)
{
byte[] fileBytes = File.ReadAllBytes(filePath);
string fileBase64 = Convert.ToBase64String(fileBytes);
using (var client = new HttpClient())
{
client.DefaultRequestHeaders.Accept.Clear();
client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
var requestContent = new StringContent($"{{\"apikey\":\"{apiKey}\",\"file\":\"{fileBase64}\"}}");
requestContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");
var requestUri = new Uri("https://www.virustotal.com/vtapi/v2/file/scan");
using (var response = await client.PostAsync(requestUri, requestContent))
{
response.EnsureSuccessStatusCode();
var responseBody = await response.Content.ReadAsStringAsync();
return responseBody;
}
}
}
Источник: Stack Overflow на русском