/* This method is Used for creating webhooks that will be triggered when the specified event takes place. */ public EventSubscription CreateEventSubscription(Oauth2Token token, EventSubscription events) { EventSubscription result = null; try { string requestBody = JsonConvert.SerializeObject(events, Formatting.Indented); var client = new RestClient(); client.BaseUrl = config.GetApiBase(); var request = new RestRequest("/event_subscription", Method.POST) .AddHeader("Content-Type", "application/json") .AddHeader("Authorization", "Bearer " + token.AccessToken); request.AddParameter("text/json", requestBody, ParameterType.RequestBody); var httpResponse = client.Execute(request); string json = httpResponse.Content.ToString(); result = JsonConvert.DeserializeObject<EventSubscription>(json); } catch(Exception ex) { Console.WriteLine(string.Format("Exception: {0}", ex.Message)); throw; } return result; }
public void DeleteEventSubscription() { string randomEmail = "lukeskywalker" + DateTime.Now.ToBinary().ToString() + "@mailinator.com"; User user = new User(); user.Email = randomEmail; user.Password = "******"; user.FirstName = "firstName"; user.LastName = "LastName"; User resultUser = cudasign.userService.Create(user); Assert.IsNotNull("No user id from creating user", resultUser.Id); resultUser.Password = "******"; Oauth2Token requestedToken = cudasign.authenticationService.RequestToken(resultUser); Assert.IsNotNull("Access Token", requestedToken.AccessToken); EventSubscription evs = new EventSubscription(); evs.Event = "document.create"; evs.CallbackUrl = "https://www.myapp.com/path/to/callback.php"; EventSubscription res = cudasign.documentService.CreateEventSubscription(requestedToken, evs); Assert.IsNotNull("Subscription Id Created", res.Id); EventSubscription deleteEvent = cudasign.documentService.DeleteEventSubscription(requestedToken, res.Id); Assert.AreEqual("deleted", deleteEvent.Status); }