Skip to main content
POST
Criação de proposta

Authorizations

Authorization
string
header
required

Chave de integração com prefixo wegly_, enviada em Authorization: Bearer . Não é JWT. A chave deve estar ativa, não excluída e dentro da validade. Com allowed_domain, Origin (ou Referer na ausência de Origin) precisa informar o hostname permitido. A empresa e as permissões são obtidas pela chave.

Body

application/json

Exige items e exatamente um contexto: lead_id OU negócio (deal_id/deal_code). Contextos ganhos, perdidos, arquivados ou em modo de negociação incompatível bloqueiam criação.

lead_id
string<uuid>
required
items
object[]
required
Minimum array length: 1

No POST, cria itens. No PUT, sem id adiciona, com id atualiza e com id + delete=true remove; itens omitidos são preservados. Ao menos um item deve permanecer. quantity é obrigatória nos itens enviados que não sejam remoções.

deal_id
string<uuid>
deal_code
string

Código público numérico do negócio, enviado como string. Evite enviar junto com deal_id: no POST o ID prevalece; no PUT o código prevalece.

Maximum string length: 50
title
string | null
Maximum string length: 150
notes
string | null
status
enum<integer>

1 = negociação, 2 = aprovada, 3 = rejeitada, 4 = arquivada, 5 = dispensada.

Available options:
1,
2,
3,
4,
5
discount_type
enum<integer> | null

0 = percentual, 1 = valor fixo.

Available options:
0,
1
discount_value
number | null
Required range: x >= 0Must be a multiple of 0.01
valid_until
string<date-time> | null
approved_by
string<uuid> | null

UUID da pessoa aprovadora vinculada à empresa; não é o ID de usuário do CRM.

approved_at
string<date-time> | null
archived_at
string<date-time> | null
rejected_at
string<date-time> | null
custom_fields
object[]

Conjunto completo de respostas de proposta, validado contra campos ativos e obrigatórios. No PUT, omitir preserva; enviar substitui o conjunto e [] só é válido se não houver obrigatórios pendentes.

delivery_schedule
object

Cronograma integral, com etapas sequenciais na ordem do array. Dias úteis são segunda a sexta, sem feriados; o horizonte total não pode ultrapassar 100 anos.

Response

Proposta criada com sucesso.

Retorno de POST, PUT e GET por ID. Inclui itens, condições de pagamento, campos personalizados e cronograma; não inclui items_count nem payment_options_count.

id
string<uuid>
lead
object | null

Lead ou negócio de origem da proposta.

deal
object | null

Lead ou negócio de origem da proposta.

code
integer
version
integer
title
string | null
status
enum<integer>

1 = negociação, 2 = aprovada, 3 = rejeitada, 4 = arquivada, 5 = dispensada.

Available options:
1,
2,
3,
4,
5
notes
string | null
is_primary
boolean
discount_type
enum<integer> | null

0 = percentual, 1 = valor fixo.

Available options:
0,
1
discount_value
number | null
subtotal
number
total
number
valid_until
string<date-time> | null
created_by
object | null
approved_by
object | null
approved_at
string<date-time> | null
archived_at
string<date-time> | null
rejected_at
string<date-time> | null
created_at
string<date-time>
updated_at
string<date-time>
notes_format
enum<string>

Formato resolvido das observações. Ao enviar notes pela API externa, o serviço detecta HTML; caso contrário usa MARKDOWN.

Available options:
MARKDOWN,
HTML
projected_values
object

Projeções para horizontes de 6, 12, 18 e 24 meses. Registros de cálculo legado usam total como fallback.

has_recurring_value
boolean
has_indefinite_recurring_value
boolean
has_rolling_projection
boolean
projection_calculated_at
string<date-time> | null
projection_calculation_version
integer | null
projection_source
string

Origem do cálculo, por exemplo DIRECT_ITEMS ou LEGACY_CURRENT_VALUE.

items
object[]
payment_options
object[]
custom_fields
object[]

Todas as definições ativas de proposta, mesmo quando answers está vazio.

delivery_schedule
object | null