Pular para o conteúdo

O vocabulário fechado das etapas do funil

GET
/v1/t/{tenantID}/plano/vocabulario
curl --request GET \
--url https://dash.owiew.com/v1/t/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/plano/vocabulario \
--header 'Authorization: Bearer <token>'

Os códigos de verbo, objetivo e métrica que uma etapa pode declarar.

São códigos, não rótulos. A frase que aparece na tela é da interface, porque ela existe em mais de um idioma — um rótulo em português servido daqui apareceria em português numa tela aberta em inglês, e nada reprovaria.

Mesma resposta para todo cliente; não muda com a janela de datas.

Exige a permissão plano.read.

tenantID
required
string format: uuid

O cliente. Vem SEMPRE do caminho — nunca de cabeçalho, nunca de cookie. Ele é conferido contra o token: um identificador que não bata com o do token devolve 403, e não uma resposta vazia.

OK

Media typeapplication/json

As sugestões de preenchimento do quadro de ações, e a lista dos campos que de fato são FECHADOS.

Leia fechados antes de validar qualquer coisa. Só o que está nele é enum; todo o resto é texto livre com sugestão, e recusar um valor fora da sugestão recusaria a primeira frase de todo cliente novo.

Não muda com a janela de datas. Muda quando o cliente declara algo novo.

object
verbos

Verbos de etapa já declarados por este cliente («Atrair tutores»). SUGESTÃO, em texto livre — não é enum.

Array<string>
objetivos

Objetivos de etapa já declarados. SUGESTÃO, texto livre.

Array<string>
metricas

Métricas de etapa já declaradas. SUGESTÃO, texto livre. Atenção: é a métrica que o cliente DECLARA perseguir, e ela pode não existir na coleta. Não a case com um campo de analytics sem conferir.

Array<string>
status

Os estados possíveis de uma ação — ideia, aprovado, rodando. Este SIM é fechado (ver fechados), e vem como CÓDIGO: a frase é da interface, que precisa existir em mais de um idioma.

Array<string>
canais

O catálogo de canais de execução oferecido como sugestão (Instagram, WhatsApp, Kommo Salesbot, n8n + WhatsApp, Omnibees…).

Não confunda com o canal de plano.marcacao, que é um enum de sete redes de anúncio e serve para conciliar gasto. Metade destes não é rede de mídia e não concilia nada.

Array<string>
canais_declarados

Os canais que ESTE cliente já escreveu, fora do catálogo. Somam-se a canais na sugestão.

Array<string>
unidades_de_negocio

As unidades de negócio já declaradas por este cliente. SUGESTÃO — uma unidade nova é aceita, e é assim que a primeira delas nasce.

Array<string>
fechados

Os nomes dos campos que são LISTA FECHADA. Hoje, ["status"].

Ele existe para que a interface (e a sua integração) não crave a decisão: o dia em que canal fechar, ou status abrir, quem lê este campo acompanha sem mudar uma linha.

Array<string>

Example generated

{
"verbos": [
"example"
],
"objetivos": [
"example"
],
"metricas": [
"example"
],
"status": [
"example"
],
"canais": [
"example"
],
"canais_declarados": [
"example"
],
"unidades_de_negocio": [
"example"
],
"fechados": [
"example"
]
}

Token ausente, malformado ou vencido.

Media typeapplication/json
object
error
object
code

Código estável, seguro para comparar.

string
message

Texto para pessoa. Pode mudar entre versões — não decida nada a partir dele.

string
trace_id

Identificador da ocorrência. Cite-o ao pedir suporte.

string

Example generated

{
"error": {
"code": "example",
"message": "example",
"trace_id": "example"
}
}

O token é válido, e o escopo não. Ou ele foi emitido para outro cliente, ou o papel não inclui a permissão da rota. NÃO é 404 de propósito: esconder um erro de escopo atrás de ‘não encontrado’ faz quem integra procurar o problema no lugar errado.

Media typeapplication/json
object
error
object
code

Código estável, seguro para comparar.

string
message

Texto para pessoa. Pode mudar entre versões — não decida nada a partir dele.

string
trace_id

Identificador da ocorrência. Cite-o ao pedir suporte.

string

Example generated

{
"error": {
"code": "example",
"message": "example",
"trace_id": "example"
}
}