Knowledge check

Webhook Architecture

12 questions in pool · live exam draws 5

12 questions · live exam draws 5
Q1 multiple-choice · polling-vs-webhook
When should you choose webhooks over polling for a PhotoRobot integration?
Q2 scenario · receiver-anatomy · weight 2
You’re building a webhook receiver for a customer integration. List the 5 sequential steps every correct receiver does before processing the event.
Q3 multiple-choice · hmac-comparison
When verifying a PhotoRobot webhook HMAC signature, which comparison method should you use?
Q4 multiple-choice · replay-window
PhotoRobot’s recommended timestamp tolerance window for webhook replay protection is:
Q5 scenario · idempotency-layers · weight 2
Your webhook receiver dedups by event ID. Despite this, customers report duplicate uploads in their DAM after webhook retries.
Q6 multiple-choice · ack-timing
PhotoRobot expects a 200 OK response from your webhook handler within approximately:
Q7 scenario · signature-failure · weight 2
Your webhook receiver suddenly starts returning 401 Invalid Signature for every delivery, even though the secret hasn’t changed.
Q8 multiple-choice · secret-storage
Where should a PhotoRobot webhook signing secret be stored?
Q9 scenario · queue-choice · weight 2
A junior engineer on your team builds a webhook handler that processes events inline using an in-memory Node.js EventEmitter queue. The handler often takes 5-15 seconds because it calls a downstream API.
Q10 multiple-choice · dedup-retention
How long should you retain the dedup record (event_id → processed flag) after first seeing an event?
Q11 true-false · back-pressure
If your webhook receiver is overwhelmed by traffic spikes, you should return 200 OK to prevent retries and absorb the spike silently.
Q12 scenario · reconciliation-poll · weight 2
Your webhook integration was misconfigured for 6 hours, returning 500 errors. PhotoRobot retried, but eventually entered degraded state and stopped delivering. You’ve fixed the bug and re-enabled the subscription.

Ready to commit? You can review and change your answers before submitting. Once submitted, this attempt is final and we'll show you your score, correct answers, and explanations.