public async Task <JobStatusResponse> TagListsUpdateAsync( long[] ticketIds, TicketTagListsUpdateRequest tickets, CancellationToken cancellationToken = default(CancellationToken)) { return(await UpdateAsync <JobStatusResponse, TicketRequest <TicketTagListsUpdateRequest> >( $"{ResourceUri}/update_many.json?ids={ZendeskFormatter.ToCsv(ticketIds)}", new TicketRequest <TicketTagListsUpdateRequest>(tickets), "updating-tag-lists", cancellationToken : cancellationToken)); }
public async Task TagListsUpdateAsync_WhenCalled_ShouldUpdateTagsInMultipleTickets() { var tickets = await CreateTickets(3); var updateTicketRequest = new TicketTagListsUpdateRequest { AdditionalTags = new[] { "tag_1" }, RemoveTags = new[] { "tag_to_remove" } }; var jobStatusResponse = await _resource.TagListsUpdateAsync(tickets.Select(x => x.Id).ToArray(), updateTicketRequest); Assert.NotNull(jobStatusResponse); var ticket1 = await _resource.GetAsync(tickets.First().Id); Assert.Contains("tag_1", ticket1.Ticket.Tags); Assert.DoesNotContain("tag_to_remove", ticket1.Ticket.Tags); var ticket2 = await _resource.GetAsync(tickets.First().Id); Assert.Contains("tag_1", ticket2.Ticket.Tags); Assert.DoesNotContain("tag_to_remove", ticket2.Ticket.Tags); }