> ## Documentation Index
> Fetch the complete documentation index at: https://juridiqsoftware.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Atualizar apontamento

> Só o dono do apontamento ou o Gestor altera. status aplica a transição do cronômetro; personId, lawSuitId e consultingId só valem em GENERAL. Vínculos são checados entre si: atendimento de outra pessoa ou de outro processo e pessoa que não é parte do processo dão 400; atendimento privado de outro dono dá 404 para quem não vê atendimentos privados. hourlyRate vale em qualquer módulo e null remove o valor. Na resposta, costValue = timeSpentSeconds / 3600 × hourlyRate, arredondado em centavos, ou null sem hourlyRate.



## OpenAPI

````yaml https://api.juridiq.com.br/api-docs/client/openapi.json patch /time-sheet/{id}
openapi: 3.1.0
info:
  title: Juridiq API — Documentação para Integradores
  description: >-
    API REST para integradores autenticados com chave (`x-juridiq-api-key`).


    ## Rate limit


    A API aberta limita **120 requisições a cada 60s por chave**.

    Ao exceder, a resposta é `429 Too Many Requests` com os headers
    `x-ratelimit-limit`, `x-ratelimit-remaining`, `x-ratelimit-reset` e
    `retry-after`.

    Respeite o `retry-after` antes de tentar de novo. Sincronizações em lote
    devem paginar e tratar 429 com backoff.
  version: 1.0.0
servers:
  - url: https://api.juridiq.com.br
    description: Production server
security:
  - apiKeyAuth: []
tags: []
paths:
  /time-sheet/{id}:
    patch:
      tags:
        - TimeSheets
      summary: Atualizar apontamento
      description: >-
        Só o dono do apontamento ou o Gestor altera. status aplica a transição
        do cronômetro; personId, lawSuitId e consultingId só valem em GENERAL.
        Vínculos são checados entre si: atendimento de outra pessoa ou de outro
        processo e pessoa que não é parte do processo dão 400; atendimento
        privado de outro dono dá 404 para quem não vê atendimentos privados.
        hourlyRate vale em qualquer módulo e null remove o valor. Na resposta,
        costValue = timeSpentSeconds / 3600 × hourlyRate, arredondado em
        centavos, ou null sem hourlyRate.
      parameters:
        - schema:
            type: string
            format: uuid
          in: path
          name: id
          required: true
          description: ID do apontamento
      requestBody:
        content:
          application/json:
            schema:
              type: object
              properties:
                status:
                  type: string
                  enum:
                    - PENDING
                    - IN_PROGRESS
                    - PAUSED
                    - COMPLETED
                    - CANCELLED
                  description: >-
                    Status a ser aplicado pelo front (retomar, pausar, concluir,
                    cancelar ou pendente)
                title:
                  type: string
                  minLength: 1
                  description: Novo título (apontamentos GERAIS)
                estimatedTimeMinutes:
                  type: integer
                  minimum: 0
                  description: Tempo previsto em minutos (apontamentos GERAIS)
                cancelReason:
                  type: string
                  description: Motivo do cancelamento
                hourlyRate:
                  type: number
                  minimum: 0
                  maximum: 1000000
                  nullable: true
                  description: >-
                    Valor da hora em reais, de 0 a 1.000.000, com até 2 casas
                    decimais (qualquer módulo; null remove o valor)
                personId:
                  type: string
                  format: uuid
                  nullable: true
                  description: >-
                    Pessoa/cliente vinculada (apenas GENERAL; null remove o
                    vínculo)
                lawSuitId:
                  type: string
                  format: uuid
                  nullable: true
                  description: Processo vinculado (apenas GENERAL; null remove o vínculo)
                consultingId:
                  type: string
                  format: uuid
                  nullable: true
                  description: >-
                    Atendimento do CRM vinculado (apenas GENERAL; null remove o
                    vínculo)
              additionalProperties: false
      responses:
        '200':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  id:
                    type: string
                    description: ID do apontamento
                  title:
                    type: string
                    description: Título
                  module:
                    type: string
                    enum:
                      - TASK
                      - AUDIENCE
                      - SUBTASK
                      - GENERAL
                    description: Módulo
                  isDone:
                    type: boolean
                    description: Concluído
                  status:
                    type: string
                    enum:
                      - PENDING
                      - IN_PROGRESS
                      - PAUSED
                      - COMPLETED
                      - CANCELLED
                    nullable: true
                    description: Status atual
                  officeId:
                    type: string
                    description: ID do escritório
                  userId:
                    type: string
                    nullable: true
                    description: ID do usuário
                  taskId:
                    type: string
                    nullable: true
                    description: ID da tarefa
                  audienceId:
                    type: string
                    nullable: true
                    description: ID da audiência
                  subtaskId:
                    type: string
                    nullable: true
                    description: ID da subtarefa
                  personId:
                    type: string
                    nullable: true
                    description: ID da pessoa/cliente vinculada
                  lawSuitId:
                    type: string
                    nullable: true
                    description: ID do processo vinculado
                  consultingId:
                    type: string
                    nullable: true
                    description: ID do atendimento vinculado
                  person:
                    type: object
                    properties:
                      id:
                        type: string
                        description: ID da pessoa
                      name:
                        type: string
                        description: Nome da pessoa
                    required:
                      - id
                      - name
                    additionalProperties: false
                    nullable: true
                    description: Pessoa/cliente vinculada
                  lawSuit:
                    type: object
                    properties:
                      id:
                        type: string
                        description: ID do processo
                      processNumber:
                        type: string
                        nullable: true
                        description: Número do processo
                    required:
                      - id
                    additionalProperties: false
                    nullable: true
                    description: Processo vinculado
                  consulting:
                    type: object
                    properties:
                      id:
                        type: string
                        description: ID do atendimento
                      subject:
                        type: string
                        description: Assunto do atendimento
                    required:
                      - id
                      - subject
                    additionalProperties: false
                    nullable: true
                    description: Atendimento do CRM vinculado
                  estimatedTimeMinutes:
                    type: number
                    nullable: true
                    description: Tempo estimado (minutos)
                  timeSpentSeconds:
                    type: number
                    description: Tempo gasto somando os históricos (segundos)
                  hourlyRate:
                    type: number
                    nullable: true
                    description: Valor da hora em reais; null quando não informado
                  costValue:
                    type: number
                    nullable: true
                    description: >-
                      Custo em reais: timeSpentSeconds / 3600 × hourlyRate,
                      arredondado em centavos; null sem hourlyRate
                  cancelReason:
                    type: string
                    nullable: true
                    description: Motivo do cancelamento
                  completedAt:
                    type: string
                    format: date-time
                    nullable: true
                    description: Data de finalização (conclusão/cancelamento)
                  vinculateItem:
                    type: object
                    properties:
                      id:
                        type: string
                        description: ID do item vinculado
                      name:
                        type: string
                        description: Nome/título do item vinculado
                      processNumber:
                        type: string
                        nullable: true
                        description: Número do processo vinculado
                    required:
                      - id
                      - name
                    additionalProperties: false
                    nullable: true
                    description: Item vinculado (tarefa/subtarefa/audiência)
                  thisUserCanEdit:
                    type: boolean
                    description: Indica se o usuário da requisição é o dono do apontamento
                  userDetail:
                    type: object
                    properties:
                      name:
                        type: string
                        description: Nome do usuário
                      urlImage:
                        type: string
                        nullable: true
                        description: URL da imagem do usuário
                    required:
                      - name
                    additionalProperties: false
                    nullable: true
                    description: Dados do usuário do apontamento
                  statusHistories:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                          description: ID do histórico
                        description:
                          type: string
                          nullable: true
                          description: Descrição
                        status:
                          type: string
                          enum:
                            - PENDING
                            - IN_PROGRESS
                            - PAUSED
                            - COMPLETED
                            - CANCELLED
                          description: Status
                        startedAt:
                          type: string
                          format: date-time
                          description: Início do status
                        endedAt:
                          type: string
                          format: date-time
                          nullable: true
                          description: Fim do status
                        timeSpent:
                          type: number
                          nullable: true
                          description: Tempo gasto (segundos)
                        createdAt:
                          type: string
                          format: date-time
                          description: Data de criação
                        updatedAt:
                          type: string
                          format: date-time
                          description: Data de atualização
                      required:
                        - id
                        - status
                        - startedAt
                        - createdAt
                        - updatedAt
                      additionalProperties: false
                    description: Históricos de status
                  createdAt:
                    type: string
                    format: date-time
                    description: Data de criação
                  updatedAt:
                    type: string
                    format: date-time
                    description: Data de atualização
                required:
                  - id
                  - title
                  - module
                  - isDone
                  - officeId
                  - timeSpentSeconds
                  - createdAt
                  - updatedAt
                additionalProperties: true
        '400':
          description: Default Response
          content:
            application/json:
              schema:
                anyOf:
                  - type: object
                    properties:
                      message:
                        type: string
                      issues: {}
                    required:
                      - message
                    additionalProperties: false
                  - type: object
                    properties:
                      message:
                        type: string
                      statusCode:
                        type: number
                      translateMessage:
                        type: string
                    required:
                      - message
                      - statusCode
                      - translateMessage
                    additionalProperties: false
        '401':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                  statusCode:
                    type: number
                  translateMessage:
                    type: string
                required:
                  - message
                  - statusCode
                  - translateMessage
                additionalProperties: false
        '403':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                  statusCode:
                    type: number
                  translateMessage:
                    type: string
                required:
                  - message
                  - statusCode
                  - translateMessage
                additionalProperties: false
        '404':
          description: Default Response
          content:
            application/json:
              schema:
                type: object
                properties:
                  message:
                    type: string
                  statusCode:
                    type: number
                  translateMessage:
                    type: string
                required:
                  - message
                  - statusCode
                  - translateMessage
                additionalProperties: false
      security:
        - apiKeyAuth: []
components:
  securitySchemes:
    apiKeyAuth:
      type: apiKey
      in: header
      name: x-juridiq-api-key
      description: >-
        Chave de API do escritório (criada no painel). Envie o valor no header
        x-juridiq-api-key. A API aberta aplica rate limit por chave (veja a
        documentação de integradores).

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.