The admin UI handles routing fine, but building the delivery payload in TypeScript keeps hitting a 422. I’ve structured the WebhookUrlReference and PayloadEncryptionDirective exactly as the docs suggest, yet the NetworkGatewayConstraint validation rejects the schema. The atomic POST should trigger the automatic circuit breaker, but it just drops the event. Endpoint reachability checks pass locally, so the ResponseCodeAnalysisPipeline isn’t catching the timeout. Here’s the payload structure throwing the error.
{
"WebhookUrlReference": "https://external.endpoint.com/hook",
"RetryIntervalMatrix": [1, 5, 15],
"PayloadEncryptionDirective": "AES256",
"MaxConcurrentDispatch": 50
}
EmbeddableClientAppSdk requires the retry policy structure to match the specific schema definition exactly. First, you need to define retryIntervalMs within the retryPolicy object. The validation fails because the matrix expects a flat integer array. It’s usually the array bounds.
"retryPolicy": { "retryIntervalMs": [1000, 5000, 10000] }
Verify the max value.
"retryPolicy": { "retryIntervalMs": [500, 2000, 8000] }
That’s the right structure. It’s clearing the 422 immediately. The v2.4 Notification API caps the retryIntervalMs max at ten seconds to keep event ordering strict. Push past that limit and the WebSocket channel drops the subscription. Reconnection logic handles the rest. Stick to the lower bounds. Keeps the throughput high.