public int CreateOrUpdateForum(Forum forum) { int existingId = GetExistingForumId(forum); if (existingId > 0) { forum.Id = existingId; //If it couldn't be updated if (!UpdateForum(forum)) { return(-1); } return(forum.Id); } var request = new ZenRestRequest { Method = Method.POST, Resource = _forums + ".xml" }; request.AddBody(forum); var res = Execute(request); return(GetIdFromLocationHeader(res)); }
/// <summary> /// Note: You cannot add end users to groups they go in organizations. /// </summary> /// <param name="group"></param> /// <returns></returns> public int CreateOrUpdateGroup(Group group) { //Check to see if a group already exists var oldGroups = GetGroups().Where(x => x.Name == group.Name); if (oldGroups.Count() > 0) { group.Id = oldGroups.First().Id; if (UpdateGroup(group)) { return(group.Id); } return(-1); } //Make sure to use the UserIds not the Users group.CopyUsersToUserIds(); var request = new ZenRestRequest { Method = Method.POST, Resource = Groups + ".json" }; request.AddBody(group); var res = Execute(request); return(GetIdFromLocationHeader(res)); }
/// <summary> /// Creates the new user and returns their id. Or updates if that email address is already in the system. /// </summary> /// <param name="newUser"></param> /// <returns></returns> public int CreateOrUpdateUser(User newUser) { //Update if the user exists var users = QueryUsers(newUser.Email); if (users.Count > 0) { newUser.Id = users.First().Id; if (!UpdateUser(newUser)) { return(-1); } return((int)users.First().Id); } var request = new ZenRestRequest { Method = Method.POST, Resource = Users + ".xml", }; request.AddBody(newUser); var res = Execute(request); return(GetIdFromLocationHeader(res)); }
public int CreateOrUpdateOrganization(Organization newOrg) { var orgs = GetOgranizations(); var curOrg = orgs.Where(x => x.Name == newOrg.Name); if (curOrg.Count() > 0) { newOrg.Id = curOrg.First().Id; //If it couldn't be updated if (!UpdateOrganization(newOrg)) return -1; return curOrg.First().Id; } var request = new ZenRestRequest { Method = Method.POST, Resource = _organizations + ".xml" }; request.AddBody(newOrg); var res = Execute(request); return GetIdFromLocationHeader(res); }
public int CreateOrUpdateForum(Forum forum) { int existingId = GetExistingForumId(forum); if(existingId > 0) { forum.Id = existingId; //If it couldn't be updated if (!UpdateForum(forum)) return -1; return forum.Id; } var request = new ZenRestRequest { Method = Method.POST, Resource = _forums + ".xml" }; request.AddBody(forum); var res = Execute(request); return GetIdFromLocationHeader(res); }
public int CreateOrUpdateOrganization(Organization newOrg) { var orgs = GetOgranizations(); var curOrg = orgs.Where(x => x.Name == newOrg.Name); if (curOrg.Count() > 0) { newOrg.Id = curOrg.First().Id; //If it couldn't be updated if (!UpdateOrganization(newOrg)) { return(-1); } return(curOrg.First().Id); } var request = new ZenRestRequest { Method = Method.POST, Resource = _organizations + ".xml" }; request.AddBody(newOrg); var res = Execute(request); return(GetIdFromLocationHeader(res)); }
/// <summary> /// Note: You cannot add end users to groups they go in organizations. /// </summary> /// <param name="group"></param> /// <returns></returns> public int CreateOrUpdateGroup(Group group) { //Check to see if a group already exists var oldGroups = GetGroups().Where(x => x.Name == group.Name); if (oldGroups.Count() > 0) { group.Id = oldGroups.First().Id; if (UpdateGroup(group)) return group.Id; return -1; } //Make sure to use the UserIds not the Users group.CopyUsersToUserIds(); var request = new ZenRestRequest { Method = Method.POST, Resource = Groups + ".xml" }; request.AddBody(group); var res = Execute(request); return GetIdFromLocationHeader(res); }
public bool AddComment(int ticketId, Comment comment) { var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", Tickets, ticketId) }; request.AddBody(comment); var res = Execute(request); return res.StatusCode == System.Net.HttpStatusCode.OK; }
public int CreateTicket(Ticket ticket) { var request = new ZenRestRequest { Method = Method.POST, Resource = Tickets + ".xml" }; request.AddBody(ticket); var res = Execute(request); return GetIdFromLocationHeader(res); }
public bool UpdateEntry(Entry entry) { var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", Entries, entry.Id) }; request.AddBody(entry); var res = Execute(request); return(res.StatusCode == System.Net.HttpStatusCode.OK); }
public int CreateEntry(Entry entry) { var request = new ZenRestRequest { Method = Method.POST, Resource = Entries + ".xml" }; request.AddBody(entry); var res = Execute(request); return(GetIdFromLocationHeader(res)); }
public bool UpdateUser(User user) { var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", Users, user.Id) }; request.AddBody(user); var res = Execute(request); return(res.StatusCode == System.Net.HttpStatusCode.OK); }
public int CreatePost(Post post) { var request = new ZenRestRequest { Method = Method.POST, Resource = Posts }; request.AddBody(post); var res = Execute(request); return GetIdFromLocationHeader(res); }
public int CreateEntry(Entry entry) { var request = new ZenRestRequest { Method = Method.POST, Resource = Entries + ".xml" }; request.AddBody(entry); var res = Execute(request); return GetIdFromLocationHeader(res); }
public int CreatePost(Post post) { var request = new ZenRestRequest { Method = Method.POST, Resource = Posts }; request.AddBody(post); var res = Execute(request); return(GetIdFromLocationHeader(res)); }
/// <summary> /// Creates a new ticket AND creates a new user as the tickets requester, IF the user does not already exist (based on the requester email). /// If the requester exists, no user is created and the ticket is created with the existing user as requester /// </summary> /// <param name="ticket"></param> /// <returns></returns> public int CreateTicketWithRequester(Ticket ticket) { var request = new ZenRestRequest { Method = Method.POST, Resource = Tickets + ".xml" }; request.AddBody(ticket); var res = Execute(request); return(GetIdFromLocationHeader(res)); }
public bool AddComment(int ticketId, Comment comment) { var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", Tickets, ticketId) }; request.AddBody(comment); var res = Execute(request); return(res.StatusCode == System.Net.HttpStatusCode.OK); }
public bool UpdateOrganization(Organization org) { var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", _organizations, org.Id) }; request.AddBody(org); var res = Execute(request); return(res.StatusCode == System.Net.HttpStatusCode.OK); }
public bool UpdateForum(Forum forum) { var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", _forums, forum.Id) }; request.AddBody(forum); var res = Execute(request); return(res.StatusCode == System.Net.HttpStatusCode.OK); }
/// <summary> /// To update custom ticket fields just add them to the ticket's TicketFieldEntries. /// Use GetTicketFields and then manually search to find the one you want to update. /// Note you can't add comments this way. Call AddComments to do that. /// </summary> /// <param name="ticket"></param> /// <returns></returns> public bool UpdateTicket(Ticket ticket) { ticket.Comments.Clear(); var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", Tickets, ticket.NiceId.ToString()) }; request.AddBody(ticket); var res = Execute(request); return(res.StatusCode == System.Net.HttpStatusCode.OK); }
public int CreateTicketAsEndUser(string endUserEmail, Ticket ticket) { var request = new ZenRestRequest { Method = Method.POST, Resource = Requests + ".xml" }; request.AddHeader(XOnBehalfOfEmail, endUserEmail); request.AddBody(ticket); //request.AddParameter("text/xml", string.Format("<ticket><subject>{0}</subject><description>{1}</description></ticket>", ticket.Subject, ticket.Description), ParameterType.RequestBody); var res = Execute(request); return GetIdFromLocationHeader(res); }
public bool UpdateGroup(Group group) { //Make sure to use the UserIds not the Users group.CopyUsersToUserIds(); var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.json", Groups, group.Id) }; request.AddBody(group); var res = Execute(request); return(res.StatusCode == System.Net.HttpStatusCode.OK); }
public int CreateTicketAsEndUser(string endUserEmail, Ticket ticket) { var request = new ZenRestRequest { Method = Method.POST, Resource = Requests + ".xml" }; request.AddHeader(XOnBehalfOfEmail, endUserEmail); request.AddBody(ticket); //request.AddParameter("text/xml", string.Format("<ticket><subject>{0}</subject><description>{1}</description></ticket>", ticket.Subject, ticket.Description), ParameterType.RequestBody); var res = Execute(request); return(GetIdFromLocationHeader(res)); }
public bool UpdatePost(Post post) { if (post.Id <= 0) { return(false); } var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", Posts, post.Id) }; request.AddBody(post); var res = Execute(request); return(res.StatusCode == System.Net.HttpStatusCode.OK); }
public bool UpdateTicketAsEndUser(int ticketId, Comment comment) { string email = GetUserById(GetTicketById(ticketId).RequesterId).Email; var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", Requests, ticketId.ToString()) }; request.AddHeader(XOnBehalfOfEmail, email); request.AddBody(comment); //request.AddParameter("text/xml", string.Format("<ticket><subject>{0}</subject><description>{1}</description></ticket>", ticket.Subject, ticket.Description), ParameterType.RequestBody); var res = Execute(request); return(res.StatusCode == System.Net.HttpStatusCode.OK); }
public bool UpdateEntry(Entry entry) { var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", Entries, entry.Id) }; request.AddBody(entry); var res = Execute(request); return res.StatusCode == System.Net.HttpStatusCode.OK; }
public bool UpdateUser(User user) { var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", Users, user.Id) }; request.AddBody(user); var res = Execute(request); return res.StatusCode == System.Net.HttpStatusCode.OK; }
/// <summary> /// Creates the new user and returns their id. Or updates if that email address is already in the system. /// </summary> /// <param name="newUser"></param> /// <returns></returns> public int CreateOrUpdateUser(User newUser) { //Update if the user exists var users = QueryUsers(newUser.Email); if (users.Count > 0) { newUser.Id = users.First().Id; if (!UpdateUser(newUser)) return -1; return (int)users.First().Id; } var request = new ZenRestRequest { Method = Method.POST, Resource = Users + ".xml", }; request.AddBody(newUser); var res = Execute(request); return GetIdFromLocationHeader(res); }
public bool UpdateTicketAsEndUser(int ticketId, Comment comment) { string email = GetUserById(GetTicketById(ticketId).RequesterId).Email; var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", Requests, ticketId.ToString()) }; request.AddHeader(XOnBehalfOfEmail, email); request.AddBody(comment); //request.AddParameter("text/xml", string.Format("<ticket><subject>{0}</subject><description>{1}</description></ticket>", ticket.Subject, ticket.Description), ParameterType.RequestBody); var res = Execute(request); return res.StatusCode == System.Net.HttpStatusCode.OK; }
/// <summary> /// To update custom ticket fields just add them to the ticket's TicketFieldEntries. /// Use GetTicketFields and then manually search to find the one you want to update. /// Note you can't add comments this way. Call AddComments to do that. /// </summary> /// <param name="ticket"></param> /// <returns></returns> public bool UpdateTicket(Ticket ticket) { ticket.Comments.Clear(); var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", Tickets, ticket.NiceId.ToString()) }; request.AddBody(ticket); var res = Execute(request); return res.StatusCode == System.Net.HttpStatusCode.OK; }
public bool UpdateOrganization(Organization org) { var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", _organizations, org.Id) }; request.AddBody(org); var res = Execute(request); return res.StatusCode == System.Net.HttpStatusCode.OK; }
public bool UpdateGroup(Group group) { //Make sure to use the UserIds not the Users group.CopyUsersToUserIds(); var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", Groups, group.Id) }; request.AddBody(group); var res = Execute(request); return res.StatusCode == System.Net.HttpStatusCode.OK; }
public bool UpdatePost(Post post) { if (post.Id <= 0) return false; var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", Posts, post.Id) }; request.AddBody(post); var res = Execute(request); return res.StatusCode == System.Net.HttpStatusCode.OK; }
public bool UpdateForum(Forum forum) { var request = new ZenRestRequest { Method = Method.PUT, Resource = string.Format("{0}/{1}.xml", _forums, forum.Id) }; request.AddBody(forum); var res = Execute(request); return res.StatusCode == System.Net.HttpStatusCode.OK; }