Gateways / Nginx modules

LoRaWAN webhook gateway

Admit authenticated network-server webhooks and shape canonical broker topics.

Source and peer runtime implemented; installed replay pending

The LoRaWAN HTTP module accepts authenticated network-server webhooks, validates selected JSON fields, and creates canonical broker events. nginz-iotd owns transactional deduplication and downlink correlation; a public Bridge SDK adapter performs blocking downlink HTTPS calls.

Location configuration

location = /iot/v1/lorawan {
  client_body_buffer_size 256k;
  client_max_body_size 256k;

  iot_gateway_lorawan on;
  iot_gateway_lorawan_max_body 256k;
  iot_gateway_lorawan_tenant tenant-a;
  iot_gateway_lorawan_verified_identity ssl_client_verify ssl_client_s_dn;
  iot_gateway_lorawan_iotd_ring /nginz-iot-edge 4096 1024 1 1;
}

The selected ChirpStack profile handles up, join, txack, and ack event shapes. Nginx owns identity and immutable event shaping; it does not perform network-server downlink calls or keep private provider state.

Use a dedicated mTLS listener or an equally explicit trusted proxy boundary. Downlink HTTPS uses a dedicated public-SDK adapter for this gateway workflow. The selected network-server profile is a Max and Enterprise gateway.

Implementation authority

This page is a customer-oriented guide. The source contract remains authoritative for exact behavior and release evidence.

src/modules/gateway-lorawan-nginx-module/README.md