Pular para o conteúdo

Abre um ticket

POST
/v1/tickets
Code sample: Shell / cURL
curl --request POST \
--url https://public-api.mspdesk.com.br/v1/tickets \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "contactId": 25, "customFields": { "12": "texto", "15": 3, "18": "2026-09-22T14:00:00-03:00" }, "customerId": 10, "description": "<p>A impressora do setor parou.</p>", "origin": "EMAIL", "priority": "MEDIUM", "serviceGroupId": 3, "subject": "Impressora não imprime", "tagIds": [ 1, 2 ] }'

Escopo exigido: tickets:write. Abre um ticket na empresa da chave.

Campos

Campo Obrigatório Observação
subject sim até 255 caracteres
description sim aceita HTML
priority sim PLANNED, LOW, MEDIUM, HIGH ou CRITICAL
origin não canal de origem; padrão API; não altera a autoria registrada
customerId sim cliente do ticket
contactId sim precisa ser contato do cliente informado
businessUnitId não precisa ser unidade de negócio do cliente informado
assetId não precisa ser ativo do cliente informado
agentId não exige serviceGroupId: agente só é atribuído a ticket com grupo; precisa estar ativo e ser membro do grupo
serviceGroupId não grupo de atendimento
serviceCatalogId não precisa estar vinculado ao grupo informado
categoryId não precisa pertencer ao serviço do catálogo informado
subcategoryId não precisa pertencer à categoria informada
ticketTypeId não tipo do ticket
tagIds não até 200 tags
customFields não objeto por ID do campo personalizado
resolution não abre e conclui o ticket na mesma requisição

Abrir e concluir na mesma requisição

Com resolution, o ticket é aberto e concluído de uma vez. A conclusão exige serviceGroupId, serviceCatalogId, categoryId, subcategoryId, ticketTypeId e agentId preenchidos no mesmo corpo; faltando algum, nada é criado e a resposta é 422 business_rule_violation. O realizado é gravado como nota de conclusão (type: NOTE, o padrão) ou como apontamento já encerrado (type: APPOINTMENT).

Campos personalizados

customFields é um objeto por ID do campo — {"12": "texto", "15": 3, "18": "2026-09-22T14:00:00-03:00"} —, e não o array da leitura. O JSON aceito em cada valor depende do tipo do campo:

Tipo do campo JSON aceito Exemplo
Texto / Área de texto texto "texto"
Número inteiro inteiro 10
Número decimal número 9.5
Caixa de seleção booleano true
Data e hora texto ISO-8601 com fuso "2026-09-22T14:00:00-03:00"
Lista suspensa inteiro: o ID da opção do campo 3

Campo personalizado de ticket global e obrigatório precisa vir preenchido. Chave que não é ID de um campo personalizado de ticket desta empresa é 422 validation_failed com unknown_field em customFields.<id>; valor do tipo errado, opção de outro campo ou data sem fuso é invalid_value no mesmo campo. Os erros de campo personalizado vêm agregados numa resposta só, ordenados pelo ID do campo.

Referências e autoria

Toda referência do corpo é resolvida na empresa da chave. Inexistente ou de outra empresa é 404 not_found, com o campo culpado em errors[0].field — nunca 403, para não revelar o que existe em outra empresa. Referência inativa é 422 validation_failed com inactive. Referência que existe mas não combina com as demais — o serviço do catálogo que não é do grupo, a categoria que não é do serviço, a subcategoria que não é da categoria, o contato, o ativo ou a unidade que não é do cliente, o agente que não é do grupo ou sem grupo informado — é 422 validation_failed com inconsistent_reference no campo incoerente.

A criação fica registrada no histórico do ticket como feita pela integração: a entrada do histórico sai com origem API e o nome da chave usada. O ticket criado pela API não tem usuário criador (createdById nulo).

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.

Dados de abertura do ticket

Media typeapplication/json

Dados de abertura de um ticket.

object
agentId

ID do agente responsável. Precisa estar ativo e ser membro do grupo; exige serviceGroupId: agente só é atribuído a ticket com grupo de atendimento.

integer format: int64
assetId

ID do ativo. Precisa pertencer ao cliente informado.

integer format: int64
businessUnitId

ID da unidade de negócio. Precisa pertencer ao cliente informado.

integer format: int64
categoryId

ID da categoria. Precisa pertencer ao serviço do catálogo informado.

integer format: int64
contactId
required

ID do contato do ticket. Precisa pertencer ao cliente informado.

integer format: int64
customFields

Valores dos campos personalizados, por ID do campo. O tipo aceito em cada valor é o do campo (texto, número, booleano, data e hora com fuso, ou ID da opção da lista). Campos personalizados de ticket globais e obrigatórios precisam vir preenchidos. Limites: TEXT até 255 caracteres e TEXT_AREA até 65535 bytes (senão too_long); DECIMAL entre -99999999.99 e 99999999.99, gravado com duas casas decimais (senão out_of_range).

object
key
additional properties

Valor JSON livre.

object
customerId
required

ID do cliente do ticket.

integer format: int64
description
required

Descrição da abertura. Aceita HTML.

string
origin

Canal de origem do ticket. Padrão API quando o campo não vem no corpo. A autoria da integração fica registrada na linha do tempo do ticket, independentemente do valor escolhido aqui.

string
Allowed values: EMAIL RMM MSP_TALKS INTERNAL PORTAL EXTERNAL_FORM API
priority
required

Prioridade do ticket.

string
Allowed values: PLANNED LOW MEDIUM HIGH CRITICAL
resolution

Resolução aplicada ao criar e concluir o ticket na mesma requisição.

object
description
required

Texto do realizado. Aceita HTML.

string
serviceType
required

Tipo de serviço do atendimento.

string
Allowed values: INTERNAL EXTERNAL
timeSpent

Tempo gasto no formato HH:mm. Padrão 00:00. Ignorado quando type é NOTE.

string
/^([01]\d|2[0-3]):[0-5]\d$/
type

Forma de registrar o realizado do criar-e-concluir.

string
Allowed values: NOTE APPOINTMENT
visibility

Visibilidade da nota de conclusão. Padrão PRIVATE. Ignorada quando type é APPOINTMENT.

string
Allowed values: PUBLIC PRIVATE
serviceCatalogId

ID do serviço do catálogo. Precisa estar vinculado ao grupo informado.

integer format: int64
serviceGroupId

ID do grupo de atendimento.

integer format: int64
subcategoryId

ID da subcategoria. Precisa pertencer à categoria informada.

integer format: int64
subject
required

Assunto do ticket.

string
0 <= 255 characters
tagIds

IDs das tags a aplicar ao ticket.

Array<integer>
0 <= 200 items
ticketTypeId

ID do tipo do ticket.

integer format: int64
Exemplo
{
"contactId": 25,
"customFields": {
"12": "texto",
"15": 3,
"18": "2026-09-22T14:00:00-03:00"
},
"customerId": 10,
"description": "<p>A impressora do setor parou.</p>",
"origin": "EMAIL",
"priority": "MEDIUM",
"serviceGroupId": 3,
"subject": "Impressora não imprime",
"tagIds": [
1,
2
]
}

Ticket criado; Location aponta para o novo recurso

Media typeapplication/json

Ticket da empresa da chave.

object
agentId

ID do agente responsável pelo ticket; null se não atribuído.

integer format: int64
nullable
answered

Indica se o ticket já foi respondido ao menos uma vez.

boolean
nullable
assetId

ID do ativo vinculado ao ticket; null se não vinculado a um ativo.

integer format: int64
nullable
businessUnitId

ID da unidade de negócio do cliente; null se o ticket não está vinculado a uma unidade.

integer format: int64
nullable
categoryId

ID da categoria do ticket; null se não categorizado.

integer format: int64
nullable
closedAt

Data e hora do fechamento do ticket, em UTC; null se ainda não fechado.

string format: date-time
nullable
code

Número do ticket, visível ao agente e ao cliente (diferente do id).

integer format: int64
nullable
contactId

ID do contato que abriu ou representa o ticket; null se não houver contato.

integer format: int64
nullable
createdAt

Data e hora de criação do ticket, em UTC.

string format: date-time
nullable
createdById

ID do usuário que criou o ticket; null se criado sem um usuário (ex.: por e-mail).

integer format: int64
nullable
customFields

Valores dos campos personalizados do ticket. Só entra um item por campo com valor preenchido; campo sem valor não aparece na lista.

Array<object>
nullable

Valor de um campo personalizado do ticket.

object
id

ID do campo personalizado.

integer format: int64
name

Nome do campo personalizado.

string
nullable
type

Tipo do campo personalizado — governa o formato de value.

string
nullable
Allowed values: TEXT INTEGER DECIMAL TEXT_AREA CHECKBOX DROPDOWN DATETIME
value

Valor do campo, no formato do tipo (type):

Tipo Formato de value
TEXT, TEXT_AREA string
INTEGER integer
DECIMAL number
DATETIME string date-time, com o offset da empresa no instante do valor
CHECKBOX boolean
DROPDOWN objeto {id, label} da opção selecionada; {id: null, label: <valor gravado>} quando a opção não existe mais
object
customerId

ID do cliente do ticket; null se não vinculado a um cliente.

integer format: int64
nullable
deleted

Indica se o ticket foi excluído. Sem filter[deleted][eq], a listagem só traz false; GET /v1/tickets/{id} devolve também o excluído, com deleted: true.

boolean
nullable
deletedAt

Data e hora da exclusão do ticket, em UTC; null se não excluído.

string format: date-time
nullable
description

Descrição da abertura do ticket.

string
nullable
followUpOfId

ID do ticket original, quando este é um desdobramento (follow-up); null caso contrário.

integer format: int64
nullable
id

Identificador interno do ticket.

integer format: int64
lastActivityAt

Última atividade no ticket: mudança na linha do ticket ou escrita em nota, resposta, encaminhamento, apontamento, tarefa, item faturável, anexo, seguidor, conversa do MSP Talks, pausa de SLA, campo personalizado ou tags. Precisão de segundo. Pode vir nulo por alguns milissegundos logo após a criação do ticket.

string format: date-time
nullable
mergedIntoId

ID do ticket no qual este foi mesclado; null se não foi mesclado.

integer format: int64
nullable
origin

Canal de origem do ticket (e-mail, portal, telefone etc.).

string
nullable
Allowed values: EMAIL RMM MSP_TALKS INTERNAL PORTAL EXTERNAL_FORM API
priority

Prioridade do ticket.

string
nullable
Allowed values: PLANNED LOW MEDIUM HIGH CRITICAL
reopened

Indica se o ticket já foi reaberto.

boolean
nullable
respondedAt

Data e hora da primeira resposta ao ticket, em UTC; null se ainda não respondido.

string format: date-time
nullable
serviceCatalogId

ID do serviço do catálogo vinculado ao ticket; null se não vinculado.

integer format: int64
nullable
serviceGroupId

ID do grupo de atendimento do ticket; null se não vinculado a um grupo.

integer format: int64
nullable
slaResponseDueAt

Prazo do SLA de resposta, em UTC; null se o ticket não tem SLA de resposta.

string format: date-time
nullable
slaResponseStatus

Status do SLA de resposta; null se o ticket não tem SLA de resposta.

string
nullable
Allowed values: WITHOUT WITHIN APPROACHING_BREACH BREACHED FULLFILLED PAUSED
slaSolutionDueAt

Prazo do SLA de solução, em UTC; null se o ticket não tem SLA de solução.

string format: date-time
nullable
slaSolutionStatus

Status do SLA de solução; null se o ticket não tem SLA de solução.

string
nullable
Allowed values: WITHOUT WITHIN APPROACHING_BREACH BREACHED FULLFILLED PAUSED
solvedAt

Data e hora da solução do ticket, em UTC; null se ainda não solucionado.

string format: date-time
nullable
stageId

ID da etapa atual do ticket dentro do fluxo; null se o ticket não estiver em um fluxo.

integer format: int64
nullable
status

Status atual do ticket.

string
nullable
Allowed values: TO_DO IN_PROGRESS PENDING COMPLETED CLOSED DELETED
subcategoryId

ID da subcategoria do ticket; null se não vinculado a uma subcategoria.

integer format: int64
nullable
subject

Assunto do ticket.

string
nullable
tagIds

IDs das tags aplicadas ao ticket.

Array<integer>
nullable
ticketTypeId

ID do tipo do ticket; null se não definido.

integer format: int64
nullable
updatedAt

Data e hora da última atualização da linha do ticket, em UTC.

string format: date-time
nullable
workflowId

ID do fluxo de trabalho aplicado ao ticket; null se nenhum fluxo estiver aplicado.

integer format: int64
nullable
Exemplo
{
"agentId": 42,
"answered": true,
"assetId": 310,
"businessUnitId": 3,
"categoryId": 6,
"closedAt": null,
"code": 18342,
"contactId": 88,
"createdAt": "2026-01-10T12:00:00Z",
"createdById": null,
"customFields": [
{
"id": 12,
"name": "Patrimônio",
"type": "TEXT",
"value": "PAT-00731"
}
],
"customerId": 15,
"deleted": false,
"deletedAt": null,
"description": "<p>A impressora do financeiro não aparece na rede desde a troca do roteador.</p>",
"followUpOfId": null,
"id": 1042,
"lastActivityAt": "2026-01-10T14:05:00Z",
"mergedIntoId": null,
"origin": "EMAIL",
"priority": "HIGH",
"reopened": false,
"respondedAt": "2026-01-10T12:40:00Z",
"serviceCatalogId": 9,
"serviceGroupId": 4,
"slaResponseDueAt": "2026-01-10T13:00:00Z",
"slaResponseStatus": "FULLFILLED",
"slaSolutionDueAt": "2026-01-10T20:00:00Z",
"slaSolutionStatus": "WITHIN",
"solvedAt": null,
"stageId": 12,
"status": "IN_PROGRESS",
"subcategoryId": 21,
"subject": "Impressora sem conexão",
"tagIds": [
1
],
"ticketTypeId": 2,
"updatedAt": "2026-01-10T14:05:00Z",
"workflowId": 5
}
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: uma referência do corpo não existe nesta empresa; errors[0].field diz qual

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

validation_failed: campo obrigatório ausente, campo desconhecido, referência inativa ou incoerente, ou valor inválido de campo personalizado. business_rule_violation: uma regra do ticket recusou a operaçã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

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