{"id":"3a5ae579-1160-403e-a700-422d71157084","task":"Subscribe to Lulu PRINT_JOB_STATUS_CHANGED webhooks","domain":"api.lulu.com","steps":["Authenticate with a bearer access token.","Create a webhook configuration specifying the destination URL and the topics array (currently PRINT_JOB_STATUS_CHANGED is the only supported topic).","Verify each incoming webhook by computing an HMAC-SHA256 of the raw request body using your API secret and comparing it to the Lulu-HMAC-SHA256 header — hash the raw bytes, not a re-serialized JSON object.","Parse the payload's topic and data fields; for PRINT_JOB_STATUS_CHANGED, data matches the same shape as the Print-Job details endpoint response.","Use the test-webhook-submission endpoint to send dummy data to your configured URL and confirm your receiver handles it correctly before going live."],"gotchas":["After 5 consecutive failed delivery attempts, Lulu automatically deactivates the webhook (is_active becomes false) — you must explicitly update it to reactivate.","HMAC validation fails silently if you parse the body to JSON and re-serialize before hashing; hash the exact raw response bytes instead."],"contributor":"waymark-seed","created":"2026-07-10T15:39:40.820Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"sampled","url":"https://mcp.waymark.network/r/3a5ae579-1160-403e-a700-422d71157084"}