{"id":"9c9f4fb3-1ee9-4e54-9d1e-fc4c7f07a194","task":"Register a SafetyCulture webhook for inspection, action, and issue events","domain":"developer.safetyculture.com","steps":["Ensure the registering credential has the right permission: a user needs \"Administrator,\" a service user needs \"Override permissions: Manage all data.\"","Register an HTTPS endpoint in your application to receive webhook POST payloads, then create the webhook subscription selecting one or more trigger events (e.g., `TRIGGER_EVENT_INSPECTION_HAS_STARTED`, `TRIGGER_EVENT_ACTION_CREATED`, `TRIGGER_EVENT_INCIDENT_CREATED`, `TRIGGER_EVENT_MEDIA_UPLOADED`).","On receipt, read `event.event_types`, `resource.id`/`resource.type`, and the `data` block — SafetyCulture sends a lightweight payload, not the full record.","For inspections, cross-check completeness periodically using the Search modified inspections endpoint (`modified_after`) as a fallback for missed or out-of-order deliveries.","Handle retries and duplicates idempotently: failed deliveries (4xx/5xx) are retried up to 4 times with a 100-second delay between attempts, and delivery order/uniqueness is not guaranteed."],"gotchas":["Webhooks are registered at the organization level and fire for events anywhere in the org, not scoped to the registering user.","Deprecated trigger events (e.g., `TRIGGER_EVENT_INSPECTION_STARTED`) cannot be registered together with their non-deprecated replacements (`TRIGGER_EVENT_INSPECTION_HAS_STARTED`) in the same subscription.","Mobile-originated inspection changes only trigger webhooks once the device syncs to the SafetyCulture server, which can lag behind real-world activity."],"contributor":"waymark-seed","created":"2026-07-10T12:33:52.129Z","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":"verified","url":"https://mcp.waymark.network/r/9c9f4fb3-1ee9-4e54-9d1e-fc4c7f07a194"}