---
title: "Criar uma meta"
method: POST
path: "/api/management/goals"
tags: ["goals"]
---

# Criar uma meta

`POST /api/management/goals`

Cria uma nova meta. Permite associar metas filhas (children) para metas compostas. Após a criação, executa o cálculo persistente do progresso.

## Request body

- union — Payload para criação de metas de diferentes tipos.
  - object
    - `title` string, required — Título da meta.
    - `description` string — Descrição detalhada da meta.
    - `status` 'active' | 'inactive' | 'completed', required — Status atual da meta. Valores possíveis: active (Ativa), inactive (Inativa), completed (Concluída).
    - `type` 'manual', required — Tipo da meta.
    - `periodicity` integer, required — Periodicidade da meta.
    - `target` number, required — Valor alvo da meta.
    - `unit` string, required — Unidade utilizada na meta.
    - `comparison_mode` 'target', required — Modo de comparação utilizado para validação da meta.
    - `progress` number, required — Progresso inicial da meta manual.
    - `start_date` string, date, required — Data de início da meta.
    - `end_date` string, date, required — Data final da meta.
    - `children` string[] — Lista de metas filhas.
  - object
    - `title` string, required
    - `description` string
    - `status` 'active' | 'inactive' | 'completed', required — Status atual da meta. Valores possíveis: active (Ativa), inactive (Inativa), completed (Concluída).
    - `type` 'projects_created', required
    - `periodicity` integer, required
    - `target` number, required
    - `unit` string, required
    - `comparison_mode` 'target', required
    - `start_date` string, date, required
    - `end_date` string, date, required
    - `children` string[]
  - object
    - `title` string, required
    - `description` string
    - `status` 'active' | 'inactive' | 'completed', required — Status atual da meta. Valores possíveis: active (Ativa), inactive (Inativa), completed (Concluída).
    - `type` 'projects_created_by_user', required
    - `periodicity` integer, required
    - `target` number, required
    - `unit` string, required
    - `comparison_mode` 'target', required
    - `start_date` string, date, required
    - `end_date` string, date, required
    - `user_id` string, uuid, required — ID do usuário associado à meta.
    - `children` string[]
  - object
    - `title` string, required
    - `description` string
    - `status` 'active' | 'inactive' | 'completed', required — Status atual da meta. Valores possíveis: active (Ativa), inactive (Inativa), completed (Concluída).
    - `type` 'funnel_steps_links', required
    - `periodicity` integer, required
    - `target` number, required
    - `unit` string, required
    - `comparison_mode` 'target', required
    - `start_date` string, date, required
    - `end_date` string, date, required
    - `funnel_step_id` integer, required — ID da etapa do funil.
    - `children` string[]
  - object
    - `title` string, required
    - `description` string
    - `status` 'active' | 'inactive' | 'completed', required — Status atual da meta. Valores possíveis: active (Ativa), inactive (Inativa), completed (Concluída).
    - `type` 'funnel_steps_links_by_user', required
    - `periodicity` integer, required
    - `target` number, required
    - `unit` string, required
    - `comparison_mode` 'target', required
    - `start_date` string, date, required
    - `end_date` string, date, required
    - `funnel_step_id` integer, required — ID da etapa do funil.
    - `user_id` string, uuid, required — ID do usuário associado à meta.
    - `children` string[]
  - object
    - `title` string, required
    - `description` string
    - `status` 'active' | 'inactive' | 'completed', required — Status atual da meta. Valores possíveis: active (Ativa), inactive (Inativa), completed (Concluída).
    - `type` 'composite', required
    - `periodicity` integer, required
    - `target` number, required
    - `unit` string, required
    - `comparison_mode` 'target', required
    - `start_date` string, date, required
    - `end_date` string, date, required
    - `children` string[], required — Lista de UUIDs das metas filhas que compõem esta meta.

## Response `200`

200

## Changes

- **2026-06-15** `4a6533a99914` — 4 breaking, 6 warning
  - added the new required request property `oneOf[subschema #3: Meta de Projetos Criados por Usuário]/user_id`
  - added the new required request property `oneOf[subschema #4: Meta de Projetos em Etapa]/funnel_step_id`
  - added the new required request property `oneOf[subschema #5: Meta de Projetos em Etapa por Usuário]/funnel_step_id`
  - added the new required request property `oneOf[subschema #5: Meta de Projetos em Etapa por Usuário]/user_id`
  - …6 more
- **2026-05-27** `90cc928d8c8a` — 6 info
  - added the new `completed` enum value to the request property `oneOf[subschema #1: Meta Manual]/status`
  - added the new `completed` enum value to the request property `oneOf[subschema #2: Meta de Projetos Criados]/status`
  - added the new `completed` enum value to the request property `oneOf[subschema #3: Meta de Projetos Criados por Usuário]/status`
  - added the new `completed` enum value to the request property `oneOf[subschema #4: Meta de Projetos em Etapa]/status`
  - …2 more
- **2026-05-27** `81946aabfb6f` — 1 breaking, 11 warning, 1 info
  - the request's body type changed from `object` to no type
  - removed the request property `children`
  - removed the request property `comparison_mode`
  - removed the request property `description`
  - …9 more

[Change history](https://skmtc.dev/olie-ai/apis/olie-api/changes/api/management/goals/post.md)

---

[API](https://skmtc.dev/olie-ai/apis/olie-api.md) · [All operations](https://skmtc.dev/olie-ai/apis/olie-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/olie-ai/olie-api/revisions/8c9bac94e5ad/schema)
