Señales Comerciales · EndPoint

EndPoint de Señales Empresariales

Tu sitio web ya sabe cuántos usuarios tiene, quién se registró hoy, cuántos artículos o perfiles existen, cuántos pagos se procesaron y qué está esperando en moderación. Envía esos números a un EndPoint y observa cada sitio que administras en un solo panel — con alertas de anomalías, objetivos y un punto de referencia de cartera. Es un EndPoint, no un widget: de servidor a servidor, sin datos personales, solo conteos.

01

Lo que puedes enviar

Cualquier contador que nombres. Agrúpalo en una categoría y lo graficamos, lo desglosamos y lo monitoreamos por ti.

Usuarios

total de usuarios, registros por día, suscriptores, eliminaciones

Contenido

materiales de cualquier tipo — artículos, videos, perfiles, listados

Ingresos

intentos de pago, pagos exitosos, reembolsos — más conversión derivada

Moderación

perfiles esperando eliminación, elementos reportados, colas de revisión

Comentarios

mensajes de formulario de contacto, tickets de soporte, NPS

¿Algo más?

nombra una métrica y aparece — sin configuración de nuestra parte

02

El EndPoint

POSThttps://astrina.io/endpoint/ingestEnvía un lote de señales. Autenticación: tu clave de sitio en el encabezado X-Astrina-Key.
GEThttps://astrina.io/endpoint/pingLatido — devuelve comandos pendientes sin enviar datos.
GEThttps://astrina.io/endpoint/insightsRecupera la salud calculada de este sitio: valores actuales, deltas, objetivos, alertas y la mediana de tus otros sitios.
POSThttps://astrina.io/endpoint/ackReconoce un comando entregado por su id.
03

Ejemplos

curl -X POST https://astrina.io/endpoint/ingest \
  -H "X-Astrina-Key: YOUR_SITE_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "signals": [
      { "metric": "users",              "kind": "gauge", "value": 15230, "category": "users" },
      { "metric": "registrations",      "value": 42,     "category": "users" },
      { "metric": "materials", "kind": "gauge", "value": 842, "dim": "article", "category": "content" },
      { "metric": "materials", "kind": "gauge", "value": 301, "dim": "video",   "category": "content" },
      { "metric": "payment_requests",   "value": 18,     "category": "revenue" },
      { "metric": "payment_success",    "value": 11,     "category": "revenue", "unit": "EUR" },
      { "metric": "feedback",           "value": 3,      "category": "feedback" },
      { "metric": "profiles_to_delete", "kind": "gauge", "value": 5, "category": "moderation",
        "good_dir": "down", "attention": true }
    ]
  }'
<?php
// Run this daily (cron) on your own site. Sends only counts — never personal data.
$key = 'YOUR_SITE_KEY';
$payload = ['signals' => [
    ['metric' => 'users',         'kind' => 'gauge', 'value' => usersTotal(),          'category' => 'users'],
    ['metric' => 'registrations', 'value' => registrationsToday(),                     'category' => 'users'],
    ['metric' => 'payment_requests', 'value' => paymentAttemptsToday(),               'category' => 'revenue'],
    ['metric' => 'payment_success',  'value' => paymentsPaidToday(), 'unit' => 'EUR',  'category' => 'revenue'],
    ['metric' => 'feedback',      'value' => feedbackToday(),                          'category' => 'feedback'],
    ['metric' => 'profiles_to_delete', 'kind' => 'gauge', 'value' => deletionQueue(),
        'category' => 'moderation', 'good_dir' => 'down', 'attention' => true],
]];
$ch = curl_init('https://astrina.io/endpoint/ingest');
curl_setopt_array($ch, [
    CURLOPT_POST => true,
    CURLOPT_HTTPHEADER => ['X-Astrina-Key: YOUR_SITE_KEY', 'Content-Type: application/json'],
    CURLOPT_POSTFIELDS => json_encode($payload),
    CURLOPT_RETURNTRANSFER => true,
]);
$resp = json_decode(curl_exec($ch), true);
// Two-way: act on anything Astrina asks for (e.g. a fresh full snapshot).
foreach ($resp['requests'] ?? [] as $cmd) {
    if ($cmd['cmd'] === 'full_snapshot') { /* push your whole history, then: */ }
    // acknowledge so it is not re-sent:
    // curl https://astrina.io/endpoint/ack  -d '{"id": ' . $cmd['id'] . '}'
}
<?php
// One-off: backfill a year of daily registrations so the charts start full.
$signals = [];
foreach (registrationsByDay('-365 days') as $day => $n) {   // 'YYYY-MM-DD' => int
    $signals[] = ['metric' => 'registrations', 'value' => $n, 'day' => $day, 'category' => 'users'];
}
// up to 2000 points per request
foreach (array_chunk($signals, 2000) as $chunk) {
    postJson('https://astrina.io/endpoint/ingest', ['signals' => $chunk], 'YOUR_SITE_KEY');
}
# Pull this site's computed health BACK (current values, 30-day deltas, target
# progress, open alerts, and the median across YOUR OTHER sites) to show it in-app:
curl "https://astrina.io/endpoint/insights" -H "X-Astrina-Key: YOUR_SITE_KEY"

Reemplace YOUR_SITE_KEY con la clave de su panel de control. Cada sitio tiene su propia clave; solo autoriza el envío de los números de ese sitio.

04

Campos de señal

CampoSignificado
metricrequeridoAny key you choose — users, registrations, materials, payment_success… Stored under this key forever.
valuerequeridoThe number. For a gauge it is the current total; for a count it is that period's amount.
kindopcional"gauge" (a snapshot total, e.g. total users now) or "count" (per-day amount, the default).
dayopcionalYYYY-MM-DD. Defaults to today. Send past days to backfill; re-sending a day overwrites it.
dimopcionalA breakdown value, e.g. the material type "article"/"video". One series per dimension.
categoryopcionalusers · content · revenue · moderation · feedback · engagement · custom — groups the metric.
unitopcionalA short unit shown next to the number, e.g. "EUR", "GB".
good_diropcional"up" (default), "down" (lower is better, e.g. a deletion queue) or "none".
attentionopcionaltrue pins the metric to the cross-site cockpit as a "needs clearing" number.
eventopcionaltrue + a count with no day increments today instead of overwriting it.
05

Bidireccional por diseño

Comandos de vuelta

Cada envío devuelve cualquier comando que haya encolado en el panel de control — por ejemplo, “envía una instantánea completa”. Su sitio los ejecuta y confirma.

Perspectivas de vuelta

Llame a /endpoint/insights para mostrar sus propios números en vivo, objetivos y alertas dentro de su panel de administración.

Referencia de cartera

Devolvemos la mediana de cada métrica en sus otros sitios, para que un sitio pueda mostrar cómo se compara con el resto.

Monitoreo de anomalías

Monitoreamos caídas bruscas, picos, una integración silenciosa y un embudo de pago que deja de convertir — y los marcamos.

EndPoint de Señales Empresariales

Lo que esta página responde

  • endPoint de Señales Empresariales
  • guía de EndPoint de Señales Empresariales
  • endPoint de Señales Empresariales explicado
  • tutorial de EndPoint de Señales Empresariales
  • comenzando con EndPoint de Señales Empresariales
  • mejores prácticas de EndPoint de Señales Empresariales
  • endPoint de Señales Empresariales paso a paso
  • qué es EndPoint de Señales Empresariales
  • endPoint de Señales Empresariales para principiantes
  • lista de verificación de EndPoint de Señales Empresariales
  • ejemplos de EndPoint de Señales Empresariales
  • por qué EndPoint de Señales Empresariales es importante