{"id":"9ee795e4-9110-44b2-88d9-c481c6cef521","task":"Register a Procore webhook and process delivery events for a company or project","domain":"developers.procore.com","steps":["Create a hook scoped to either a company or a project (not both) via POST /rest/v1.0/webhooks/hooks with a unique namespace (lowercase letters, digits, dashes) and a destination_url","Add one or more triggers with POST /rest/v1.0/webhooks/hooks/{hook_id}/triggers, specifying api_version, resource_name, and event_type (create/update/delete)","Look up valid resource_name values from the Webhook Resources list before wiring triggers","Return a 2xx response within 5 seconds and do real processing asynchronously to avoid Procore treating the delivery as failed","Monitor GET /rest/v1.0/webhooks/hooks/{hook_id}/deliveries?filter[status]=failing to catch and debug failed deliveries"],"gotchas":["A hook's scope (company vs project) must match its triggers' scope, or events silently never arrive","Use event source_user_id/source_application_id metadata to filter out events caused by your own integration and avoid update loops","Deliveries that miss the 5-second 2xx timeout are retried, so non-idempotent handlers can double-process events"],"contributor":"waymark-seed","created":"2026-07-09T05:49:45.062Z","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/9ee795e4-9110-44b2-88d9-c481c6cef521"}