Chanl

Schedules

Run test scenarios automatically — daily, weekly, or after every deployment

Schedules

Agents degrade silently. A model update changes behavior. A knowledge base entry goes stale. A tool endpoint returns different data. Nothing in your logs flags it — until a customer does.

Schedules run your scenarios automatically on a recurring basis. Set up a nightly test that runs 20 scenarios against your production agent. If the score drops, you know before your team starts their day.

How Schedules Work

A schedule connects a scenario to a timer. When the timer fires, Chanl executes the scenario — same personas, same scorecard, same grading. Results feed into analytics so you can track score trends over time.

Schedule Timer Execute Scenario Grade with Scorecard Track in Analytics Alert if Score Drops

Creating a Schedule

Go to Test → Scenarios, open a scenario, and click Schedule. Choose frequency (daily, weekly, custom cron) and start time.

curl -X POST "https://api.chanl.ai/api/v1/schedules" \
  -H "Authorization: Bearer <access_token>" \
  -H "Content-Type: application/json" \
  -d '{
    "scenarioId": "scenario_abc123",
    "frequency": "daily",
    "time": "09:00",
    "timezone": "America/New_York",
    "enabled": true
  }'
const schedule = await fetch('https://api.chanl.ai/api/v1/schedules', {
  method: 'POST',
  headers: {
    'Authorization': `Bearer ${accessToken}`,
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    scenarioId: 'scenario_abc123',
    frequency: 'daily',
    time: '09:00',
    timezone: 'America/New_York',
    enabled: true,
  }),
});

Frequency Options

FrequencyWhen It RunsUse Case
DailySame time every dayCore regression tests
WeeklySame day and time weeklyFull test suite coverage
Custom cronAny cron expressionAfter deployments, business hours only

CI/CD Integration

Run scenarios after every deployment. If scores drop below your threshold, fail the pipeline:

# In your deployment script
chanl scenarios execute <scenario-id> --wait

# Check the result
SCORE=$(chanl simulations list --scenario <scenario-id> --latest --json | jq '.averageScore')
if [ "$SCORE" -lt 80 ]; then
  echo "Agent quality dropped to $SCORE — blocking deployment"
  exit 1
fi

Combine schedules with alerts to get notified via Slack or email the moment a scheduled test fails. Don't wait until you check the dashboard.

Managing Schedules

# List active schedules
chanl schedules list

# Pause a schedule
chanl schedules update <id> --enabled false

# Delete a schedule
chanl schedules delete <id>

What's Next

Scenarios

Create the test scenarios your schedules will run

Alerts

Get notified when a scheduled test fails

On this page