Saltar al contenido principal
Este camino necesita cuatro llamadas al hub. Se suscribe al hecho de ciclo de vida hub.destination.verified del propio hub, así que no necesitas un productor de producto aparte para la primera comprobación de extremo a extremo. Cada llamada a /v1 envía el header Authorization: Bearer TOKEN y Content-Type: application/json. El hub nunca toma el tenant del cuerpo, la ruta o la query de la solicitud.

Antes de empezar


Necesitas:
  • Un hub en ejecución y un token con los permisos subscriptions get y post de Streaming Hub. La lectura del catálogo también necesita catalog get.
  • Un endpoint https:// público que controles.

Las cuatro llamadas


1. Encuentra la clave de coincidencia y el origin


GET /v1/catalog Encuentra la entrada cuyo eventKey es hub.destination.verified. Su source es streaming-hub. Pon el eventKey en event_types exactamente como lo sirve el catálogo. No lo construyas a partir de resourceType y eventType. Pon el source en origin.

2. Crea la suscripción


POST /v1/subscriptions Envía X-Idempotency con un valor único.
event_types recibe valores eventKey del catálogo, no tipos completos de CloudEvents. Tanto event_types como origin son inmutables después de la creación. schema_major es opcional. plan_tier usa standard de forma predeterminada. La respuesta 201 lleva la nueva subscription con su id y el signingSecret en texto plano. Guarda el secreto ahora. Ninguna ruta de lectura lo devuelve. Un reintento con la misma clave X-Idempotency devuelve la misma respuesta.

3. Activa el destino y emite el hecho de prueba


POST /v1/subscriptions/{id}/ping Un webhook nuevo empieza en pending_verification. El ping envía un sondeo firmado por la ruta de entrega de producción. Tu endpoint debe responder con 2xx.
outcome: "ok" mueve la suscripción a active. Después de que ese cambio de estado se confirma, el hub intenta emitir hub.destination.verified con ce-source: streaming-hub. Si esa emisión de mejor esfuerzo tiene éxito, la suscripción que acabas de crear coincide con el hecho y lo recibe. Repetir el ping para una suscripción que ya está activa vuelve a sondear el endpoint, pero no reemite el evento de ciclo de vida.

4. Confirma la entrega


Tu endpoint recibe un POST firmado con X-Lerian-Event-Id, X-Lerian-Event-Type y X-Lerian-Delivery-Id. Verifica el HMAC antes de confiar en el cuerpo y deduplica por X-Lerian-Event-Id. Luego llama a GET /v1/subscriptions/{id}/health. Un last_success_at reciente y un conteo delivered en delivery_outcomes confirman que el camino funciona de extremo a extremo. Una suscripción pull no necesita endpoint ni ping. Créala con sink_kind: "pull" y luego lee GET /v1/events?subscription_id=<id>. Consulta Gestión de suscripciones y Consumo de eventos para el ciclo de vida, las firmas, los reintentos y los cursores.