The Post Monitor service confirms that every submitted post URL is publicly accessible and remains live over time. It runs automatically via a daily cron job and also supports on-demand manual re-verification initiated by the brand.
Automatic Daily Checks
The inzc_daily_post_check cron runs once per day and checks:
- Projects with a single
post_url(non-slot-based deliverables) - Individual deliverable slots (
wp_inzc_deliverable_submissions) that have apost_urlrecorded
A URL is considered stale after 24 hours and is rechecked even if it previously passed. Results are logged in wp_inzc_post_checks and the project’s post_verification_status is updated to match.
| Verification Status | Meaning |
|---|---|
pending |
Not yet checked |
verified |
URL responded with HTTP 200 and content was accessible |
failed |
URL returned an error or was inaccessible |
Manual Re-Verification
Brands can trigger a manual re-check for all projects under a campaign without waiting for the next daily run. This is useful after an influencer claims they fixed a broken link.
- Access via the campaign detail page → Re-verify Posts.
- Each brand has a daily quota of 3 manual re-verify calls per campaign (configurable via the
inzc_post_monitor_daily_quotafilter). The quota resets at midnight UTC. - The quota is tracked via a WordPress transient, not the database.
HTTP Check Behaviour
- Timeout: 10 seconds per URL (configurable via
inzc_post_monitor_timeout) - Maximum projects per cron run: 50 (configurable via
inzc_post_monitor_max_per_cron_run) - A HEAD request is sent first; falls back to GET if the server does not support HEAD
failed.