Cancelamento de ticket do Desk pelo usuário via SDK

Boa tarde,

Estou usando SDK C# e preciso fazer uma consulta ao Desk retornando todos os tickets que estão abertos por um determinado usuário. Estou tentando implementar o cancelamento via usuário, porém preciso pegar a identificação do atendimento e depois enviar o comando para fechar o ticket.

  1. Não consegui fazer funcionar a query string de filtro, tentei muitas coisas mas sempre retornam 10 tickets (tenho apenas 1 aberto). Estou tentando algo assim (já tentei vários formatos diferentes, já tentei usando $filter mas também não funcioncou):

var command = new Command
{
Method = CommandMethod.Get,
To = "postmaster@desk.msging.net",
Uri = new LimeUri("/tickets?$closed=false&$customerIdentity=1450331545019997@messenger.gw.msging.net")
};
var response = await _sender.ProcessCommandAsync(command, cancellationToken);

  1. Com relação ao comando de finalização do chamado, preciso passar um os parâmetros id e status. Estou tentando algumas formas diferentes. Mas está apresentando erro “Could not change the parameter of type ‘Lime.Protocol.JsonDocument’ to type ‘Takenet.Iris.Messaging.Resources.Ticket’ (Code 62)” usando o código abaixo.

var parametros = new JsonDocument();
parametros.Add(“id”, “ef9104ca-d449-4bfa-acbe-3d6ef594b770”);
parametros.Add(“status”, “ClosedClient”);

//encerra ticket
var command2 = new Command
{
Method = CommandMethod.Set,
To = "postmaster@desk.msging.net",
Uri = new LimeUri("/tickets/change-status"),
Resource = parametros
};
var response2 = await _sender.ProcessCommandAsync(command2, cancellationToken);

Conseguem ajudar com um exemplo destes dois procedimentos?