title: CALDAV Edit/Delete multiple events in ICLOUD
body: <p>I have implemented caldav api to add ,update ,delete events in icloud calendars and everything is working as expected. When it comes to add,update,delete multiple events in one api call, the add works without much issues.But not sure how I can edit and delete multiple events in one api call.</p>
  
  <p>Below code will give an idea of how I delete one event</p>
  
  <pre><code>public void DeleteEvent(CalendarToken authToken, string eventId, Action&lt;APIResponse&gt; callback)
      {
          var appleToken = GetAppleAuthToken(authToken);
          string url = @"https://" + appleToken.AppleCalendarDomainUrl + "/" + appleToken.AppleUserID + "/calendars/home/" + eventId + "_event.ics";
          string response = SendRequest(appleToken, url, string.Empty, "DELETE", "application/xml; charset=utf-8", "0");
  
      }
  private string SendRequest(AppleCalendarToken appleToken, string destinationUrl, string requestData, string methodType, string contentType, string depthValue)
      {
          try
          {
              HttpWebRequest request = (HttpWebRequest)WebRequest.Create(destinationUrl);
              byte[] bytes;
              bytes = System.Text.Encoding.ASCII.GetBytes(requestData);
              request.Credentials = GetCredentials(appleToken, destinationUrl);
              request.PreAuthenticate = true;
              request.ContentType = contentType; //"application/xml; encoding='utf-8'";
              request.ContentLength = bytes.Length;
              request.Method = methodType;
              request.Headers.Add("Depth", depthValue);
              request.Accept = "*/*";
              request.UserAgent = "cURL based CalDAV client";
              ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls12 | SecurityProtocolType.Ssl3;
              Stream requestStream = request.GetRequestStream();
              requestStream.Write(bytes, 0, bytes.Length);
              requestStream.Close();
              HttpWebResponse response;
              response = (HttpWebResponse)request.GetResponse();
              if ((int)response.StatusCode == 207 || (int)response.StatusCode == 201)
              {
                  Stream responseStream = response.GetResponseStream();
                  return new StreamReader(responseStream).ReadToEnd();
  
              }
          }
          catch
          {
              throw;
          }
  
          return string.Empty;
      }
  </code></pre>
  
  <p>Below screenshot will show how I add multiple events in one api call
  <a href="https://i.stack.imgur.com/0Zicd.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/0Zicd.png" alt="enter image description here"></a>
  I am looking edit/delete more than one event in one api call. 
  Any help would be appreciated. Thanks in advance.</p>