api-referencePOST
POST
https://analytics.flowsery.com/api/v1/goalsGrave um evento de meta personalizado. Apenas o nome é obrigatório; VisitorUid, sessionUid, metadados e fuso horário são opcionais.
Chave API (Bearer token)
Corpo da requisicao
| Parametro | Tipo | Descricao |
|---|---|---|
visitorUid | string | ID de visitante Flowsery opcional, normalmente proveniente do cookie _fs_vid no seu próprio back-end. |
sessionUid | string | ID de sessão Flowsery opcional, normalmente proveniente do cookie _fs_sid. |
nameOBRIGATORIO | string | Nome do objetivo (letras minusculas, numeros, sublinhados e hifens; max 64 caracteres). |
metadata | object | Pares de valores-chave personalizados opcionais. Mantenha 10 chaves ou menos. |
Regras do campo metadata
<strong>Chaves:</strong> Apenas letras minusculas, numeros, sublinhados (_) e hifens (-). Max 64 caracteres.
<strong>Valores:</strong> Qualquer string ate 255 caracteres. Conteudo HTML e script e automaticamente removido por seguranca.
<strong>Limite:</strong> Ate 10 parametros personalizados por evento.
Nenhuma visualização de página existente é necessária
O back-end pode criar o registo da meta sob pedido. Este endpoint não deve ser documentado como exigindo uma visualização de página previamente registada.Respostas de erro
<strong>400 Bad Request</strong> – Retornado quando a carga útil é inválida.
<strong>404 Not Found</strong> – Não faz parte do contrato normal de criação de objetivos.
Exemplo de requisicao (Node.js)
const handler = async (req, res) => {
const _fs_vid = req.cookies._fs_vid;
const _fs_sid = req.cookies._fs_sid;
const response = await fetch(
"https://analytics.flowsery.com/api/v1/goals",
{
method: "POST",
headers: {
Authorization: `Bearer ${FLOWSERY_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
visitorUid: _fs_vid,
sessionUid: _fs_sid,
name: "newsletter_signup",
metadata: {
name: "Elon Musk",
email: "musk@x.com",
},
}),
}
);
const result = await response.json();
res.status(200).send("Goal tracked");
};200
{
"status": "success",
"data": [{
"message": "Goal created successfully"
}]
}