---
title: "Criar apontamento"
method: POST
path: "/tickets/{ticket_number}/appointments"
tags: ["Apontamentos"]
---

# Criar apontamento

`POST /tickets/{ticket_number}/appointments`

Cria um apontamento em um determinado ticket.
- É possível criar apontamentos em tickets de mesas configuradas com **apontamentos sem valorização** ou **com valorização**.
- Em mesas **com valorização** são obrigatórios **attendance** e **attendance_kind**, além de **loose_service_id** (quando attendance_kind = 1) ou **contract_rider_id** (quando attendance_kind = 2).
- O **value** só pode ser informado em apontamentos de **serviço avulso** (attendance_kind = 1), onde é registrado como valor manual; quando omitido, é calculado a partir do serviço avulso cadastrado. Em apontamentos de **contrato** o valor não deve ser informado, pois o faturamento contabiliza a quantidade de horas dos apontamentos.
- Em apontamentos em **garantia** (guarantee = true) o valor é zero e o campo **value** não deve ser informado.
- O deslocamento pode ser um deslocamento cadastrado (**shift_id**) ou o deslocamento de outro ticket do mesmo cliente (**shift_owner_ticket_number**), nunca os dois no mesmo apontamento.
- Em mesas **sem valorização** os campos de valorização não podem ser informados.
- Não é possível criar apontamentos em mesas configuradas como **sem apontamentos**.

## Path parameters

- `ticket_number` integer, required

## Request body

- object
  - `date` string, date, required — Dia que será criado o apontamento. Não é possível informar um dia futuro e são aceitos vários formatos, mas recomendamos informar em iso8601: **YYYY-MM-DD**
  - `init_time` string, required — Horário de início do atendimento. No formato **HH:MM**
  - `end_time` string, required — Horário de fim do atendimento. No formato **HH:MM**
  - `description` string, required — Descrição do apontamento
  - `external_user_name` string, nullable — Nome do usuário que executou a ação em uma ferramenta externa. É um valor de registro/exibição, não substitui o usuário autenticado na API. Tamanho máximo de 255 caracteres e não pode conter os caracteres < ou >.
  - `attendance` 1 | 2 | 3, nullable — Tipo de atendimento: **1** (Externo), **2** (Remoto) ou **3** (Interno). Obrigatório em mesas com valorização.
  - `attendance_kind` 1 | 2, nullable — Tipo do vínculo de valorização: **1** (Avulso) ou **2** (Contrato). Utilizado apenas em mesas com valorização.
  - `contract_rider_id` integer, nullable — Identificador do aditivo de contrato (contract_rider) usado como referência. Obrigatório quando attendance_kind é **2** (Contrato) e não pode ser informado quando é **1** (Avulso). Deve pertencer a um contrato vigente do cliente do ticket. Aditivos vinculados diretamente a um **grupo de contratos** não podem ser utilizados.
  - `loose_service_id` integer, nullable — Identificador do serviço avulso usado como referência. Obrigatório quando attendance_kind é **1** (Avulso) e não pode ser informado quando é **2** (Contrato). Deve ser um serviço **ativo** e disponível para o cliente do ticket.
  - `shift_id` integer, nullable — Identificador do deslocamento vinculado ao apontamento. Deve ser um deslocamento **ativo** e pertencente à organização. Só pode ser informado quando o atendimento é **externo** (attendance = 1), sendo obrigatório nesse caso quando a organização exige deslocamento. Deslocamentos vinculados a um contrato só podem ser utilizados em apontamentos de contrato (attendance_kind = 2) e devem pertencer ao mesmo contrato informado em contract_rider_id.
  - `shift_owner_ticket_number` integer, nullable — Número do ticket que possui o deslocamento aproveitado por este apontamento (deslocamento **carona**). Deve ser outro ticket do mesmo cliente e só pode ser informado quando o atendimento é **externo** (attendance = 1), sem shift_id no mesmo apontamento.
  - `guarantee` boolean, nullable — Indica apontamento em **garantia**. Quando verdadeiro o valor do apontamento é zero e o campo value não deve ser informado.
  - `value` number, nullable — Valor do apontamento. Só pode ser informado em apontamentos de **serviço avulso** (attendance_kind = 1), onde é registrado como valor manual. Quando omitido, o valor é calculado a partir do serviço avulso cadastrado. Em apontamentos de **contrato** não deve ser informado, pois o faturamento contabiliza a quantidade de horas dos apontamentos, não o valor.

## Response `201`

### **Apontamento criado**

- object
  - `id` integer, required — **Identificador do apontamento**
  - `date` string, date, required — Dia em que o atendimento foi realizado
  - `init_time` string, required — Horário de início do atendimento. No formato **HH:MM**
  - `end_time` string, required — Horário de fim do atendimento. No formato **HH:MM**
  - `description` string, required — Descrição do apontamento
  - `external_user_name` string, nullable — Nome do usuário que executou a ação em uma ferramenta externa
  - `value` string — Valor do apontamento. Retornado apenas em apontamentos de **serviço avulso**: nos de contrato o faturamento contabiliza a quantidade de horas, não o valor do apontamento
  - `user` object, required — *Atendente que realizou o apontamento:*
    - `id` integer — **Identificador do usuário**
    - `name` string — Nome do usuário

## Other responses

- `403` — ### **Problemas com permissão** Essa resposta significa que o seu usuário está autenticado corretamente, porém, não possui a permissão ou licença necessária para acessar essa rota
- `404` — ### **Ticket não encontrado**
- `422` — ### **Problemas com os parâmetros informados**

---

[API](https://skmtc.net/tiflux/apis/tiflux-official-api.md) · [All operations](https://skmtc.net/tiflux/apis/tiflux-official-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/tiflux/tiflux-official-api/revisions/c656412a58bc/schema)
