コード例 #1
0
        public async Task <IActionResult> CreateIncident([FromBody] iTopCreateRequest value)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var response = await itopService.CreateInsidentAsync(value);

            var baseUrl     = $"{HttpContext.Request.Scheme}://{HttpContext.Request.Host.ToUriComponent()}";
            var locationUri = baseUrl + "/" + APIRoute.iTopService.CreateIncident;

            return(Created(locationUri, response));
        }
コード例 #2
0
        public async Task <iTopCreateResponse> CreateInsidentAsync(iTopCreateRequest message)
        {
            iTopAPIMessage msg = new iTopAPIMessage();

            msg.EndPoint = $"{ItopAPIOptions.Endpoint}&auth_user={ItopAPIOptions.Username}&auth_pwd={ItopAPIOptions.Password}&json_data={JsonConvert.SerializeObject(message)}";
            var creds = new Credentials {
                Username = ItopAPIOptions.Username, Password = ItopAPIOptions.Password
            };

            msg.Credentials = Convert.ToBase64String(Encoding.UTF8.GetBytes(creds.Username));
            msg.Create      = message;
            //msg.Create.operation = message.operation;
            //msg.Create.fields.caller_id.first_name = "";
            //msg.Create.fields.caller_id.name = "";
            // var response = (await iTopAPIWorker(msg)).Content.ReadAsStringAsync();
            var rsp = await iTopAPIWorker(msg);

            return(JsonConvert.DeserializeObject <iTopCreateResponse>(rsp));
        }