/* * * 26. Рекізити судового документа * [POST] /api/1.0/courtdecision/getdecisionbyid * * curl --location --request POST 'https://vkursi-api.azurewebsites.net/api/1.0/courtdecision/getdecisionbyid' \ * --header 'Authorization: Bearer eyJhbGciOiJIUzI1Ni' \ * --header 'Content-Type: application/json' \ * --data-raw '{"Id":88234097}' * */ public static GetDecisionByIdResponseModel GetDecisionById(long courtDecisionId, string token) { if (string.IsNullOrEmpty(token)) { AuthorizeClass _authorize = new AuthorizeClass(); token = _authorize.Authorize(); } string responseString = string.Empty; while (string.IsNullOrEmpty(responseString)) { RestClient client = new RestClient("https://vkursi-api.azurewebsites.net/api/1.0/courtdecision/getdecisionbyid"); RestRequest request = new RestRequest(Method.POST); GetDecisionByIdBodyModel GDBIBody = new GetDecisionByIdBodyModel { Id = courtDecisionId // Id судового документа }; string body = JsonConvert.SerializeObject(GDBIBody); // Example Body: {"Id":88234097} request.AddHeader("ContentType", "application/json"); request.AddHeader("Authorization", "Bearer " + token); request.AddParameter("application/json", body, ParameterType.RequestBody); IRestResponse response = client.Execute(request); responseString = response.Content; if ((int)response.StatusCode == 401) { Console.WriteLine("Не авторизований користувач або закінчився термін дії токену. Отримайте новый token на api/1.0/token/authorize"); AuthorizeClass _authorize = new AuthorizeClass(); token = _authorize.Authorize(); } else if ((int)response.StatusCode != 200) { Console.WriteLine("Запит не успішний"); return(null); } } GetDecisionByIdResponseModel GDBIResponseRow = new GetDecisionByIdResponseModel(); GDBIResponseRow = JsonConvert.DeserializeObject <GetDecisionByIdResponseModel>(responseString); return(GDBIResponseRow); }
/* * * 67. Запит на отримання повних реквізитів та контенту судових документів організації за критеріями * [POST] /api/1.0/courtdecision/getdecisionsbyfilter * */ public static GetDecisionByIdResponseModel GetDecisionsByFilter(string edrpou, int?skip, int?typeSide, int?justiceKindId, List <string> npas, string token) { if (string.IsNullOrEmpty(token)) { AuthorizeClass _authorize = new AuthorizeClass(); token = _authorize.Authorize(); } string responseString = string.Empty; while (string.IsNullOrEmpty(responseString)) { GetDecisionsByFilterRequestBodyModel GDBFRequestBody = new GetDecisionsByFilterRequestBodyModel { Edrpou = edrpou, // Код ЄДРПОУ TypeSide = typeSide, // Тип сторони в судомому документі JusticeKindId = justiceKindId, // Форма судочинства Npas = npas // Фільтр по статтям до НПА }; string body = JsonConvert.SerializeObject(GDBFRequestBody); // Example body: {"Edrpou":"14360570","Skip":0,"TypeSide":null,"JusticeKindId":null,"Npas":["F545D851-6015-455D-BFE7-01201B629774"]} RestClient client = new RestClient("https://vkursi-api.azurewebsites.net/api/1.0/courtdecision/getdecisionsByFilter"); RestRequest request = new RestRequest(Method.POST); request.AddHeader("ContentType", "application/json"); request.AddHeader("Authorization", "Bearer " + token); request.AddParameter("application/json", body, ParameterType.RequestBody); IRestResponse response = client.Execute(request); responseString = response.Content; if ((int)response.StatusCode == 401) { Console.WriteLine("Не авторизований користувач або закінчився термін дії токену. Отримайте новый token на api/1.0/token/authorize"); AuthorizeClass _authorize = new AuthorizeClass(); token = _authorize.Authorize(); } else if ((int)response.StatusCode == 200 && responseString == "\"Not found\"") { Console.WriteLine("За вказаними параметрами інформації не знайдено"); return(null); } else if ((int)response.StatusCode == 403 && responseString.Contains("Not enough cards to form a request")) { Console.WriteLine("Недостатньо ресурсів для виконання запиту, відповідно до вашого тарифу. Дізнатися об'єм доступних ресурсів - /api/1.0/token/gettariff"); return(null); } else if ((int)response.StatusCode != 200) { Console.WriteLine("Запит не успішний"); return(null); } } // Модель відповіди ідентична Методу № 26. Рекізити судового документа [POST] /api/1.0/courtdecision/getdecisionbyid // https://github.com/vkursi-pro/API/blob/master/vkursi-api-example/courtdecision/GetDecisionByIdClass.cs#L110 GetDecisionByIdResponseModel DecisionsByFilterResponseRow = new GetDecisionByIdResponseModel(); DecisionsByFilterResponseRow = JsonConvert.DeserializeObject <GetDecisionByIdResponseModel>(responseString); return(DecisionsByFilterResponseRow); }