Tarefas e relacionados (Schedule Item (Itens das Tarefas))
Inclusão de itens de tarefa em lote
POST /CenterWeb/api/{$apiKey}/batch/scheduleItems.xml
Este recurso permite fazer a criação e atualização de itens de tarefa em lote, sem que haja a necessidade de fazer inúmeras requisições para a api.
<scheduleItems>
<scheduleItem>
<schedule>
<alternativeIdentifier>ID_tarefa_1</alternativeIdentifier>
</schedule>
<item>
<alternativeIdentifier>ID_item_1</alternativeIdentifier>
</item>
<customFields>
<IDalternativo_itemtarefa>teste1</IDalternativo_itemtarefa>
<IDalternativo_itemtarefa>teste2</IDalternativo_itemtarefa>
</customFields>
</scheduleItem>
...
<scheduleItem>
<schedule>
<alternativeIdentifier>ID_tarefa_2</alternativeIdentifier>
</schedule>
<item>
<alternativeIdentifier>ID_item_100</alternativeIdentifier>
</item>
<customFields>
<IDalternativo_itemtarefa>teste1</IDalternativo_itemtarefa>
<IDalternativo_itemtarefa>teste2</IDalternativo_itemtarefa>
</customFields>
</scheduleItem>
</scheduleItems>
A seção "<scheduleItem></scheduleItem>" representa cada item de tarefa a ser inserido, limitando em 100 o número máximo de itens de tarefa por requisição.
Caso algum erro ocorra, toda a operação será abortada e nenhum item de tarefa será inserido.
Como retorno a esta chamada o sistema apresenta os o link de acesso a cada item criado.
Ex:
<result>
<resourceName>scheduleItems</resourceName>
<size>2</size>
<entries>
<entry id="1803794" link="/scheduleItem/1803794.xml" />
<entry id="1803795" link="/scheduleItem/1803795.xml" />
</entries>
</result>
Caso seja necessário, pode-se trabalhar com campos customizados nos itens da tarefa através da tag <customFields>. Para detalhes de como utilizá-lo, veja o artigo de Campos Customizáveis.
Busca por Item da Tarefa
GET /CenterWeb/api/{$apiKey}/scheduleItem.xml
Se preferir ainda, pode refinar as pesquisas enviando parâmetros na requisição, para isso é necessário adicionar parâmetros igual realizamos em uma requisição HTTP:
GET /CenterWeb/api/{$apiKey}/scheduleItem.xml?item=134
Item: pesquisar por um determinado item de tarefa
GET /CenterWeb/api/{$apiKey}/scheduleItem.xml?schedule=5421
schedule: pesquisar por uma determinada tarefa
GET /CenterWeb/api/{$apiKey}/scheduleItem.xml?item.alternativeIdentifier=item1&schedule.active=true
Filtrar itens de tarefa com base em atributos das entidades vinculadas de item e tarefa
Busca por um Item de Tarefa em específico
GET /CenterWeb/api/{$apiKey}/scheduleItem/{$id}.xml
Este recurso serve para puxar dados de um item de tarefa específico do sistema. Veja o exemplo de retorno de uma entidade abaixo (considerando uma requisição feita em XML):
Ex.:
<scheduleItem>
<id>10830724</id>
<item>
<id>579749</id>
<description>Item do ID 100</description>
<alternativeIdentifier>ID_item_100</alternativeIdentifier>
<active>true</active>
</item>
<schedule>
<id>4099150</id>
<hour>15:27</hour>
<executionHour>20:12</executionHour>
<active>true</active>
<activitiesOrigin>4</activitiesOrigin>
<executionStartTime>15:27</executionStartTime>
</schedule>
</scheduleItem>
Remoção de um Item de Tarefa em específico
Usando o Id:
DELETE /CenterWeb/api/{$apiKey}/scheduleItem/{$id}.xml
{$itemAltId} = Identificador interno do item de tarefa
Usando o Identificador Alternativo:
DELETE /CenterWeb/api/{$apiKey}/scheduleItem/schedule/{$scheduleAltId}/item/{$itemAltId}.xml
{$scheduleAltId} = Identificador alternativo da Tarefa
{$itemAltId} = Identificador alternativo do Item
Ambos as chamadas servem para remover um item de tarefa específico do sistema. Como confirmação da remoção do item específico o sistema retorna como status da requisição o código de retorno OK(200) bem como apresenta a seguinte mensagem de retorno:
Ex.:
<result>
<statusCode>200</statusCode>
<message>scheduleItem: scheduleItem.item.exclusion.successful</message>
</result>