Pular para o conteúdo

Aplica um modelo de tarefas ao ticket

POST
/v1/tickets/{ticketId}/tasks/from-template
Code sample: Shell / cURL
curl --request POST \
--url https://public-api.mspdesk.com.br/v1/tickets/1/tasks/from-template \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "agentId": 42, "taskTemplateId": 7 }'

Escopo exigido: tickets:write. Cria de uma vez as tarefas do modelo, na ordem em que ele as define, e devolve todas as tarefas do ticket depois da aplicação — inclusive as que já existiam, que é o que a tela recarrega.

A resposta traz no máximo mil tarefas. Um ticket que passe disso é bem maior do que a aba comporta, e o caminho para lê-lo inteiro é a listagem paginada.

taskTemplateId precisa ser um modelo da empresa da chave: um modelo de outra empresa responde 404 not_found neste campo. agentId é obrigatório pelo mesmo motivo do POST /tasks — ele fica como criador das tarefas aplicadas.

Nenhum parâmetro de consulta é aceito.

ticketId
required
integer format: int64

ID do ticket

Exemplo
1
Idempotency-Key
string
<= 255 characters

Garante que repetir a mesma requisição não duplique o efeito. 1 a 255 caracteres ASCII visíveis. Repetir a mesma chave devolve a mesma resposta (cabeçalho Idempotent-Replayed: true); a mesma chave com um corpo diferente é 422 idempotency_key_reused. A resposta repetida é a original: o corpo mantém o requestId e o idioma da primeira requisição; o cabeçalho X-Request-Id é o da requisição nova. A repetição também consome o limite de uso.

Media typeapplication/json

Modelo de tarefas a aplicar ao ticket.

object
agentId
required

Agente que fica como criador das tarefas aplicadas. Precisa existir, estar ativo e ser da empresa da chave.

integer format: int64
taskTemplateId
required

Identificador do modelo de tarefas. Precisa ser da empresa da chave — um modelo de outra empresa responde 404 not_found neste campo.

integer format: int64
Exemplo
{
"agentId": 42,
"taskTemplateId": 7
}

As tarefas do ticket depois da aplicação

Media typeapplication/json
Array<object>

Tarefa (item da lista de afazeres) de um ticket.

object
agentId

Agente responsável pela tarefa. Nulo quando ninguém responde por ela — e sempre nulo em um título de grupo.

integer format: int64
nullable
completed

A tarefa está concluída. Sempre false em um título de grupo.

boolean
nullable
createdAt

Instante de criação do registro. Nulo em tarefa anterior a esta API.

string format: date-time
nullable
createdById

Agente que criou a tarefa. Nunca é nulo.

integer format: int64
nullable
deadline

Prazo da tarefa, sem fuso, em yyyy-MM-ddTHH:mm:ss — os segundos saem sempre, mesmo zerados, e a entrada os aceita como opcionais. Nulo quando a tarefa não tem prazo.

string
nullable
description

Descrição livre. Sempre nula em um título de grupo.

string
nullable
groupTitle

A linha é um título de grupo: um separador que agrupa as tarefas abaixo dele, sem prazo, responsável, descrição nem conclusão próprios.

boolean
nullable
id

Identificador da tarefa.

integer format: int64
position

Posição na ordem da aba, crescente. Nula em tarefa anterior a esta API, que nunca recebeu posição; a listagem a ordena antes de todas as outras. Pode ser negativa: é um número de ordenação relativo, não um índice. Não é editável pelo PATCH: quem a muda é POST /tasks/{taskId}/move.

integer format: int64
nullable
title

Título da tarefa.

string
nullable
updatedAt

Instante da última alteração do registro. Nulo em tarefa anterior a esta API que nunca foi alterada desde então.

string format: date-time
nullable
Exemplo
[
{
"agentId": 42,
"completed": false,
"createdAt": "2026-01-10T12:30:00Z",
"createdById": 42,
"deadline": "2026-01-12T09:30:00",
"description": "Conferir se o job noturno terminou sem erro.",
"groupTitle": false,
"id": 512,
"position": 200,
"title": "Validar o backup do servidor",
"updatedAt": "2026-01-10T12:30:00Z"
}
]
RateLimit-Limit
integer format: int32

Capacidade do balde mais restritivo consumido nesta requisição

RateLimit-Remaining
integer format: int32

Requisições restantes nesse balde

RateLimit-Reset
integer format: int32

Segundos até o balde encher de novo

Requisição malformada ou parâmetros de consulta inválidos

Media typeapplication/problem+json

Erro no formato RFC 9457 (application/problem+json).

object
code
required

Código estável do erro, para tratamento programático.

string
detail
required

Explicação legível deste erro específico.

string
errors

Erros de campo — presente quando a falha vem de validação de campo.

Array<object>
object
code

Código estável do erro de campo.

string
Allowed values: required too_long too_short invalid_value invalid_format unknown_field unsupported_operator unsupported_field out_of_range not_found inactive inconsistent_reference not_applicable
field

Campo com erro, em notação de ponto/colchete. Ausente quando o erro não é de um campo específico.

string
nullable
message

Mensagem traduzida no locale da requisição.

string
layer

Presente só no 429

string
Allowed values: ip company key operation concurrency
operation

Presente só quando layer=operation

string
Allowed values: report pdf upload
requestId

Identificador da requisição — informe-o ao suporte ao reportar um erro.

string
requiredScope

Presente só no 403 insufficient_scope

string
status
required

Status HTTP da resposta.

integer format: int32
title
required

Título curto e legível do erro.

string
type
required

URI que identifica o tipo do erro.

string
Exemplo
{
"code": "not_found",
"detail": "O recurso solicitado não foi encontrado.",
"errors": [
{
"code": "required"
}
],
"layer": "ip",
"operation": "report",
"requestId": "7f3a9c2e-4b1d-4f7a-9e0c-2b8d6a1f3c55",
"status": 404,
"title": "Recurso não encontrado",
"type": "https://developers.mspdesk.com.br/erros/#not_found"
}
RateLimit-Limit
integer format: int32

Capacidade do balde mais restritivo consumido nesta requisição

RateLimit-Remaining
integer format: int32

Requisições restantes nesse balde

RateLimit-Reset
integer format: int32

Segundos até o balde encher de novo

Chave de API ausente, inválida, revogada ou expirada

Media typeapplication/problem+json

Erro no formato RFC 9457 (application/problem+json).

object
code
required

Código estável do erro, para tratamento programático.

string
detail
required

Explicação legível deste erro específico.

string
errors

Erros de campo — presente quando a falha vem de validação de campo.

Array<object>
object
code

Código estável do erro de campo.

string
Allowed values: required too_long too_short invalid_value invalid_format unknown_field unsupported_operator unsupported_field out_of_range not_found inactive inconsistent_reference not_applicable
field

Campo com erro, em notação de ponto/colchete. Ausente quando o erro não é de um campo específico.

string
nullable
message

Mensagem traduzida no locale da requisição.

string
layer

Presente só no 429

string
Allowed values: ip company key operation concurrency
operation

Presente só quando layer=operation

string
Allowed values: report pdf upload
requestId

Identificador da requisição — informe-o ao suporte ao reportar um erro.

string
requiredScope

Presente só no 403 insufficient_scope

string
status
required

Status HTTP da resposta.

integer format: int32
title
required

Título curto e legível do erro.

string
type
required

URI que identifica o tipo do erro.

string
Exemplo
{
"code": "not_found",
"detail": "O recurso solicitado não foi encontrado.",
"errors": [
{
"code": "required"
}
],
"layer": "ip",
"operation": "report",
"requestId": "7f3a9c2e-4b1d-4f7a-9e0c-2b8d6a1f3c55",
"status": 404,
"title": "Recurso não encontrado",
"type": "https://developers.mspdesk.com.br/erros/#not_found"
}

Acesso negado: empresa inativa (account_inactive), API pública desabilitada para a empresa (public_api_disabled), escopo liberado só com a API pública (scope_requires_public_api) ou escopo insuficiente (insufficient_scope)

Media typeapplication/problem+json

Erro no formato RFC 9457 (application/problem+json).

object
code
required

Código estável do erro, para tratamento programático.

string
detail
required

Explicação legível deste erro específico.

string
errors

Erros de campo — presente quando a falha vem de validação de campo.

Array<object>
object
code

Código estável do erro de campo.

string
Allowed values: required too_long too_short invalid_value invalid_format unknown_field unsupported_operator unsupported_field out_of_range not_found inactive inconsistent_reference not_applicable
field

Campo com erro, em notação de ponto/colchete. Ausente quando o erro não é de um campo específico.

string
nullable
message

Mensagem traduzida no locale da requisição.

string
layer

Presente só no 429

string
Allowed values: ip company key operation concurrency
operation

Presente só quando layer=operation

string
Allowed values: report pdf upload
requestId

Identificador da requisição — informe-o ao suporte ao reportar um erro.

string
requiredScope

Presente só no 403 insufficient_scope

string
status
required

Status HTTP da resposta.

integer format: int32
title
required

Título curto e legível do erro.

string
type
required

URI que identifica o tipo do erro.

string
Exemplo
{
"code": "not_found",
"detail": "O recurso solicitado não foi encontrado.",
"errors": [
{
"code": "required"
}
],
"layer": "ip",
"operation": "report",
"requestId": "7f3a9c2e-4b1d-4f7a-9e0c-2b8d6a1f3c55",
"status": 404,
"title": "Recurso não encontrado",
"type": "https://developers.mspdesk.com.br/erros/#not_found"
}
RateLimit-Limit
integer format: int32

Capacidade do balde mais restritivo consumido nesta requisição

RateLimit-Remaining
integer format: int32

Requisições restantes nesse balde

RateLimit-Reset
integer format: int32

Segundos até o balde encher de novo

not_found: o ticket, o modelo ou o agente não existe nesta empresa

Media typeapplication/problem+json

Erro no formato RFC 9457 (application/problem+json).

object
code
required

Código estável do erro, para tratamento programático.

string
detail
required

Explicação legível deste erro específico.

string
errors

Erros de campo — presente quando a falha vem de validação de campo.

Array<object>
object
code

Código estável do erro de campo.

string
Allowed values: required too_long too_short invalid_value invalid_format unknown_field unsupported_operator unsupported_field out_of_range not_found inactive inconsistent_reference not_applicable
field

Campo com erro, em notação de ponto/colchete. Ausente quando o erro não é de um campo específico.

string
nullable
message

Mensagem traduzida no locale da requisição.

string
layer

Presente só no 429

string
Allowed values: ip company key operation concurrency
operation

Presente só quando layer=operation

string
Allowed values: report pdf upload
requestId

Identificador da requisição — informe-o ao suporte ao reportar um erro.

string
requiredScope

Presente só no 403 insufficient_scope

string
status
required

Status HTTP da resposta.

integer format: int32
title
required

Título curto e legível do erro.

string
type
required

URI que identifica o tipo do erro.

string
Exemplo
{
"code": "not_found",
"detail": "O recurso solicitado não foi encontrado.",
"errors": [
{
"code": "required"
}
],
"layer": "ip",
"operation": "report",
"requestId": "7f3a9c2e-4b1d-4f7a-9e0c-2b8d6a1f3c55",
"status": 404,
"title": "Recurso não encontrado",
"type": "https://developers.mspdesk.com.br/erros/#not_found"
}
RateLimit-Limit
integer format: int32

Capacidade do balde mais restritivo consumido nesta requisição

RateLimit-Remaining
integer format: int32

Requisições restantes nesse balde

RateLimit-Reset
integer format: int32

Segundos até o balde encher de novo

Conflito — unicidade, recurso em uso, ou Idempotency-Key em execução

Media typeapplication/problem+json

Erro no formato RFC 9457 (application/problem+json).

object
code
required

Código estável do erro, para tratamento programático.

string
detail
required

Explicação legível deste erro específico.

string
errors

Erros de campo — presente quando a falha vem de validação de campo.

Array<object>
object
code

Código estável do erro de campo.

string
Allowed values: required too_long too_short invalid_value invalid_format unknown_field unsupported_operator unsupported_field out_of_range not_found inactive inconsistent_reference not_applicable
field

Campo com erro, em notação de ponto/colchete. Ausente quando o erro não é de um campo específico.

string
nullable
message

Mensagem traduzida no locale da requisição.

string
layer

Presente só no 429

string
Allowed values: ip company key operation concurrency
operation

Presente só quando layer=operation

string
Allowed values: report pdf upload
requestId

Identificador da requisição — informe-o ao suporte ao reportar um erro.

string
requiredScope

Presente só no 403 insufficient_scope

string
status
required

Status HTTP da resposta.

integer format: int32
title
required

Título curto e legível do erro.

string
type
required

URI que identifica o tipo do erro.

string
Exemplo
{
"code": "not_found",
"detail": "O recurso solicitado não foi encontrado.",
"errors": [
{
"code": "required"
}
],
"layer": "ip",
"operation": "report",
"requestId": "7f3a9c2e-4b1d-4f7a-9e0c-2b8d6a1f3c55",
"status": 404,
"title": "Recurso não encontrado",
"type": "https://developers.mspdesk.com.br/erros/#not_found"
}
RateLimit-Limit
integer format: int32

Capacidade do balde mais restritivo consumido nesta requisição

RateLimit-Remaining
integer format: int32

Requisições restantes nesse balde

RateLimit-Reset
integer format: int32

Segundos até o balde encher de novo

Corpo da requisição acima de 1 MB

Media typeapplication/problem+json

Erro no formato RFC 9457 (application/problem+json).

object
code
required

Código estável do erro, para tratamento programático.

string
detail
required

Explicação legível deste erro específico.

string
errors

Erros de campo — presente quando a falha vem de validação de campo.

Array<object>
object
code

Código estável do erro de campo.

string
Allowed values: required too_long too_short invalid_value invalid_format unknown_field unsupported_operator unsupported_field out_of_range not_found inactive inconsistent_reference not_applicable
field

Campo com erro, em notação de ponto/colchete. Ausente quando o erro não é de um campo específico.

string
nullable
message

Mensagem traduzida no locale da requisição.

string
layer

Presente só no 429

string
Allowed values: ip company key operation concurrency
operation

Presente só quando layer=operation

string
Allowed values: report pdf upload
requestId

Identificador da requisição — informe-o ao suporte ao reportar um erro.

string
requiredScope

Presente só no 403 insufficient_scope

string
status
required

Status HTTP da resposta.

integer format: int32
title
required

Título curto e legível do erro.

string
type
required

URI que identifica o tipo do erro.

string
Exemplo
{
"code": "not_found",
"detail": "O recurso solicitado não foi encontrado.",
"errors": [
{
"code": "required"
}
],
"layer": "ip",
"operation": "report",
"requestId": "7f3a9c2e-4b1d-4f7a-9e0c-2b8d6a1f3c55",
"status": 404,
"title": "Recurso não encontrado",
"type": "https://developers.mspdesk.com.br/erros/#not_found"
}
RateLimit-Limit
integer format: int32

Capacidade do balde mais restritivo consumido nesta requisição

RateLimit-Remaining
integer format: int32

Requisições restantes nesse balde

RateLimit-Reset
integer format: int32

Segundos até o balde encher de novo

Content-Type não suportado

Media typeapplication/problem+json

Erro no formato RFC 9457 (application/problem+json).

object
code
required

Código estável do erro, para tratamento programático.

string
detail
required

Explicação legível deste erro específico.

string
errors

Erros de campo — presente quando a falha vem de validação de campo.

Array<object>
object
code

Código estável do erro de campo.

string
Allowed values: required too_long too_short invalid_value invalid_format unknown_field unsupported_operator unsupported_field out_of_range not_found inactive inconsistent_reference not_applicable
field

Campo com erro, em notação de ponto/colchete. Ausente quando o erro não é de um campo específico.

string
nullable
message

Mensagem traduzida no locale da requisição.

string
layer

Presente só no 429

string
Allowed values: ip company key operation concurrency
operation

Presente só quando layer=operation

string
Allowed values: report pdf upload
requestId

Identificador da requisição — informe-o ao suporte ao reportar um erro.

string
requiredScope

Presente só no 403 insufficient_scope

string
status
required

Status HTTP da resposta.

integer format: int32
title
required

Título curto e legível do erro.

string
type
required

URI que identifica o tipo do erro.

string
Exemplo
{
"code": "not_found",
"detail": "O recurso solicitado não foi encontrado.",
"errors": [
{
"code": "required"
}
],
"layer": "ip",
"operation": "report",
"requestId": "7f3a9c2e-4b1d-4f7a-9e0c-2b8d6a1f3c55",
"status": 404,
"title": "Recurso não encontrado",
"type": "https://developers.mspdesk.com.br/erros/#not_found"
}
RateLimit-Limit
integer format: int32

Capacidade do balde mais restritivo consumido nesta requisição

RateLimit-Remaining
integer format: int32

Requisições restantes nesse balde

RateLimit-Reset
integer format: int32

Segundos até o balde encher de novo

Falha de validação ou regra de negócio

Media typeapplication/problem+json

Erro no formato RFC 9457 (application/problem+json).

object
code
required

Código estável do erro, para tratamento programático.

string
detail
required

Explicação legível deste erro específico.

string
errors

Erros de campo — presente quando a falha vem de validação de campo.

Array<object>
object
code

Código estável do erro de campo.

string
Allowed values: required too_long too_short invalid_value invalid_format unknown_field unsupported_operator unsupported_field out_of_range not_found inactive inconsistent_reference not_applicable
field

Campo com erro, em notação de ponto/colchete. Ausente quando o erro não é de um campo específico.

string
nullable
message

Mensagem traduzida no locale da requisição.

string
layer

Presente só no 429

string
Allowed values: ip company key operation concurrency
operation

Presente só quando layer=operation

string
Allowed values: report pdf upload
requestId

Identificador da requisição — informe-o ao suporte ao reportar um erro.

string
requiredScope

Presente só no 403 insufficient_scope

string
status
required

Status HTTP da resposta.

integer format: int32
title
required

Título curto e legível do erro.

string
type
required

URI que identifica o tipo do erro.

string
Exemplo
{
"code": "not_found",
"detail": "O recurso solicitado não foi encontrado.",
"errors": [
{
"code": "required"
}
],
"layer": "ip",
"operation": "report",
"requestId": "7f3a9c2e-4b1d-4f7a-9e0c-2b8d6a1f3c55",
"status": 404,
"title": "Recurso não encontrado",
"type": "https://developers.mspdesk.com.br/erros/#not_found"
}
RateLimit-Limit
integer format: int32

Capacidade do balde mais restritivo consumido nesta requisição

RateLimit-Remaining
integer format: int32

Requisições restantes nesse balde

RateLimit-Reset
integer format: int32

Segundos até o balde encher de novo

Limite de uso atingido (rate_limited); o campo layer indica a camada: ip, company, key, operation ou concurrency

Media typeapplication/problem+json

Erro no formato RFC 9457 (application/problem+json).

object
code
required

Código estável do erro, para tratamento programático.

string
detail
required

Explicação legível deste erro específico.

string
errors

Erros de campo — presente quando a falha vem de validação de campo.

Array<object>
object
code

Código estável do erro de campo.

string
Allowed values: required too_long too_short invalid_value invalid_format unknown_field unsupported_operator unsupported_field out_of_range not_found inactive inconsistent_reference not_applicable
field

Campo com erro, em notação de ponto/colchete. Ausente quando o erro não é de um campo específico.

string
nullable
message

Mensagem traduzida no locale da requisição.

string
layer

Presente só no 429

string
Allowed values: ip company key operation concurrency
operation

Presente só quando layer=operation

string
Allowed values: report pdf upload
requestId

Identificador da requisição — informe-o ao suporte ao reportar um erro.

string
requiredScope

Presente só no 403 insufficient_scope

string
status
required

Status HTTP da resposta.

integer format: int32
title
required

Título curto e legível do erro.

string
type
required

URI que identifica o tipo do erro.

string
Exemplo
{
"code": "not_found",
"detail": "O recurso solicitado não foi encontrado.",
"errors": [
{
"code": "required"
}
],
"layer": "ip",
"operation": "report",
"requestId": "7f3a9c2e-4b1d-4f7a-9e0c-2b8d6a1f3c55",
"status": 404,
"title": "Recurso não encontrado",
"type": "https://developers.mspdesk.com.br/erros/#not_found"
}
RateLimit-Limit
integer format: int32

Capacidade do balde mais restritivo consumido nesta requisição

RateLimit-Remaining
integer format: int32

Requisições restantes nesse balde

RateLimit-Reset
integer format: int32

Segundos até o balde encher de novo

Retry-After
integer format: int32

Segundos até poder repetir

Erro interno inesperado

Media typeapplication/problem+json

Erro no formato RFC 9457 (application/problem+json).

object
code
required

Código estável do erro, para tratamento programático.

string
detail
required

Explicação legível deste erro específico.

string
errors

Erros de campo — presente quando a falha vem de validação de campo.

Array<object>
object
code

Código estável do erro de campo.

string
Allowed values: required too_long too_short invalid_value invalid_format unknown_field unsupported_operator unsupported_field out_of_range not_found inactive inconsistent_reference not_applicable
field

Campo com erro, em notação de ponto/colchete. Ausente quando o erro não é de um campo específico.

string
nullable
message

Mensagem traduzida no locale da requisição.

string
layer

Presente só no 429

string
Allowed values: ip company key operation concurrency
operation

Presente só quando layer=operation

string
Allowed values: report pdf upload
requestId

Identificador da requisição — informe-o ao suporte ao reportar um erro.

string
requiredScope

Presente só no 403 insufficient_scope

string
status
required

Status HTTP da resposta.

integer format: int32
title
required

Título curto e legível do erro.

string
type
required

URI que identifica o tipo do erro.

string
Exemplo
{
"code": "not_found",
"detail": "O recurso solicitado não foi encontrado.",
"errors": [
{
"code": "required"
}
],
"layer": "ip",
"operation": "report",
"requestId": "7f3a9c2e-4b1d-4f7a-9e0c-2b8d6a1f3c55",
"status": 404,
"title": "Recurso não encontrado",
"type": "https://developers.mspdesk.com.br/erros/#not_found"
}
RateLimit-Limit
integer format: int32

Capacidade do balde mais restritivo consumido nesta requisição

RateLimit-Remaining
integer format: int32

Requisições restantes nesse balde

RateLimit-Reset
integer format: int32

Segundos até o balde encher de novo

idempotency_unavailable: Redis indisponível para avaliar o cabeçalho Idempotency-Key presente na requisição.

Media typeapplication/problem+json

Erro no formato RFC 9457 (application/problem+json).

object
code
required

Código estável do erro, para tratamento programático.

string
detail
required

Explicação legível deste erro específico.

string
errors

Erros de campo — presente quando a falha vem de validação de campo.

Array<object>
object
code

Código estável do erro de campo.

string
Allowed values: required too_long too_short invalid_value invalid_format unknown_field unsupported_operator unsupported_field out_of_range not_found inactive inconsistent_reference not_applicable
field

Campo com erro, em notação de ponto/colchete. Ausente quando o erro não é de um campo específico.

string
nullable
message

Mensagem traduzida no locale da requisição.

string
layer

Presente só no 429

string
Allowed values: ip company key operation concurrency
operation

Presente só quando layer=operation

string
Allowed values: report pdf upload
requestId

Identificador da requisição — informe-o ao suporte ao reportar um erro.

string
requiredScope

Presente só no 403 insufficient_scope

string
status
required

Status HTTP da resposta.

integer format: int32
title
required

Título curto e legível do erro.

string
type
required

URI que identifica o tipo do erro.

string
Exemplo
{
"code": "not_found",
"detail": "O recurso solicitado não foi encontrado.",
"errors": [
{
"code": "required"
}
],
"layer": "ip",
"operation": "report",
"requestId": "7f3a9c2e-4b1d-4f7a-9e0c-2b8d6a1f3c55",
"status": 404,
"title": "Recurso não encontrado",
"type": "https://developers.mspdesk.com.br/erros/#not_found"
}
RateLimit-Limit
integer format: int32

Capacidade do balde mais restritivo consumido nesta requisição

RateLimit-Remaining
integer format: int32

Requisições restantes nesse balde

RateLimit-Reset
integer format: int32

Segundos até o balde encher de novo