Scheduled investigations let you automate recurring security checks. Define a query once, set a frequency, and SoCMate runs the investigation automatically on schedule, notifying you when findings are detected.

Use Cases

  • Daily sign-in monitoring — Check for brute force patterns every morning
  • Weekly threat hunting — Search for lateral movement indicators across your environment
  • Monthly compliance checks — Verify security baselines and audit log completeness
  • One-time delayed investigation — Schedule an investigation to run at a specific future time

Creating a Schedule

From the UI

Navigate to Schedules in the sidebar and click Create Schedule. Fill in the investigation query, persona, frequency, and preferred run time.

From the API

1

Validate the query

Before creating a schedule, validate that your query is specific enough for recurring execution:
The validation checks that the query has enough specificity (concrete entities, clear time scoping, measurable conditions) for consistent recurring execution.
2

Create the schedule

Frequency Options

For once schedules, the status automatically changes to COMPLETED after the single run finishes. All other frequencies continue running until manually paused or deleted.

Schedule Lifecycle

Managing Schedules

List Schedules

Update a Schedule

Modify the query, frequency, or scheduled time. The next run time is automatically recalculated.

Trigger an Immediate Run

Run a scheduled investigation immediately without waiting for the next scheduled time:
Response:
The ad-hoc run does not affect the regular schedule timing.

Delete a Schedule

Soft-deletes the schedule. It will no longer run.

Monitoring Runs

View Run History

See the last 50 runs for a schedule, including status, duration, and linked investigation sessions:

Run Statuses

If a scheduled investigation remains in running state for more than 1 hour, it is automatically marked as failed. This prevents stuck runs from blocking future executions.

How It Works

Scheduled investigations run as automated background tasks:
  1. Checking — SoCMate checks every minute for schedules past their next_run_at time
  2. Triggering — For each due schedule, a new investigation session is started automatically
  3. Monitoring — Run statuses are checked every 5 minutes for completed or failed runs
  4. Notifications — Completion and failure notifications are sent through the notification system
  5. Next run — After each run, the next_run_at is recalculated based on the frequency

Notifications

Scheduled investigations generate notifications on:
  • Completion — Investigation finished with results
  • Failure — Investigation encountered an error
Configure notification delivery (in-app, email) in your user settings.

Failure Handling

  • Individual run failures are recorded in the run history with error details
  • After 5 consecutive failures, the schedule is automatically disabled with status=FAILED
  • Failed schedules can be re-enabled after resolving the underlying issue
  • Common failure causes: Sentinel connectivity issues, query timeout, LLM provider errors