api-referencePOST
POST
https://analytics.flowsery.com/analytics/api/v1/goalsGrave um evento de meta personalizado. Apenas o nome é obrigatório; VisitorUid, sessionUid, metadados e fuso horário são opcionais.
Token Bearer (token de workspace ou chave API de website)
Os tokens do espaço de trabalho precisam de um seletor de site
Os tokens da API do Workspace podem acessar todos os sites do workspace. Passe <code>websiteId</code> ou <code>domain</code> para que Flowsery saiba qual site consultar ou alterar. As chaves da API do site já têm como escopo um site, portanto o seletor pode ser omitido.Seletor de site
| Parametro | Tipo | Descricao |
|---|---|---|
websiteId | string | ID do site a ser usado com um token de API do workspace. Inclua este campo no corpo JSON, a menos que você forneça domain. Omitir ao autenticar com uma chave de API de site. |
domain | string | Site domain para usar com um token de API do espaço de trabalho quando websiteId não for fornecido. Inclua este campo no corpo JSON. Omitir ao autenticar com uma chave de API de site. |
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/analytics/api/v1/goals",
{
method: "POST",
headers: {
Authorization: `Bearer ${FLOWSERY_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
websiteId: process.env.FLOWSERY_WEBSITE_ID,
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"
}]
}