/// <summary> /// Delete all subscriptions of a certain object type. /// </summary> /// <param name="clientId"></param> /// <param name="clientSecret"></param> /// <param name="obj"></param> /// <returns></returns> public async Task <string> DeleteAllSubscriptionsForObjectAsync(RealTimeObjects obj) { using (HttpClient httpClient = new HttpClient()) { var response = await httpClient.DeleteAsync(RealTimeSubscriptionsUrlsFactory.CreateDELETESubscriptionsUrl(this.clientId, this.clientSecret, obj)); string responseContent = await response.Content.ReadAsStringAsync(); if (response.IsSuccessStatusCode) { return(responseContent); } else { throw new InstagramAPIException(responseContent); } } }
public static string CreateDELETESubscriptionsUrl(string clientId, string clientSecret, RealTimeObjects obj) { var queryString = BuildDELETESubscriptionsUrlQueryString(clientId, clientSecret, obj); return(BuildRealTimeSubscriptionUrl(InstagramAPIUrls.RealTimeSubscriptionsUrl, queryString)); }
private static object BuildDELETESubscriptionsUrlQueryString(string clientId, string clientSecret, RealTimeObjects obj) { var queryString = QueryHelpers.ParseQuery(""); queryString["client_id"] = clientId; queryString["client_secret"] = clientSecret; switch (obj) { case RealTimeObjects.User: queryString["object"] = "user"; break; case RealTimeObjects.All: queryString["object"] = "all"; break; default: break; } return(queryString.ToString()); }
private static object BuildDELETESubscriptionsUrlQueryString(string clientId, string clientSecret, RealTimeObjects obj) { var queryString = HttpUtility.ParseQueryString(""); queryString["client_id"] = clientId; queryString["client_secret"] = clientSecret; switch (obj) { case RealTimeObjects.User: queryString["object"] = "user"; break; case RealTimeObjects.Tag: queryString["object"] = "tag"; break; case RealTimeObjects.Location: queryString["object"] = "location"; break; case RealTimeObjects.Geography: queryString["object"] = "geography"; break; case RealTimeObjects.All: queryString["object"] = "all"; break; default: break; } return(queryString.ToString()); }