SuitePortal
User GuideSyncing Data

Scheduling Syncs

Configure automatic sync schedules

Scheduling Syncs

Configure when sync configurations run automatically using predefined presets or custom cron expressions.

Schedule Presets

SuitePortal provides predefined schedule options:

PresetLabelCron ExpressionDescription
manualManual OnlyRun only when manually triggered
every-15-minEvery 15 Minutes*/15 * * * *Runs at :00, :15, :30, :45
every-30-minEvery 30 Minutes*/30 * * * *Runs at :00, :30
hourlyEvery Hour0 * * * *Runs at the top of each hour
every-6-hoursEvery 6 Hours0 */6 * * *Runs at 12:00 AM, 6:00 AM, 12:00 PM, 6:00 PM
every-12-hoursEvery 12 Hours0 */12 * * *Runs at 12:00 AM and 12:00 PM
dailyDaily0 0 * * *Runs once per day at midnight UTC
weeklyWeekly0 0 * * 1Runs Monday at midnight UTC
customCustomUser-definedDefine your own cron expression

Subscription Tier Limits

Minimum sync intervals vary by subscription tier:

TierMinimum Interval
Basic60 minutes
Premium15 minutes
Enterprise5 minutes

Attempting to set a schedule more frequent than your tier allows will result in an error.

Sync Frequency Types

FrequencyDescription
manualNo automatic scheduling
hourlyLegacy hourly schedule
dailyLegacy daily schedule
weeklyLegacy weekly schedule
customUses cron_expression field

Setting a Schedule

Via Dashboard

  1. Navigate to Portal → Sync Configs
  2. Select a sync configuration
  3. Click Edit
  4. Under Schedule, select a preset or enter custom cron
  5. Click Save

Schedule Configuration Fields

FieldTypeDescription
sync_frequencyenumFrequency type
cron_expressionstringCron expression (for custom schedules)

Custom Cron Expressions

For advanced scheduling, use a cron expression:

┌───────────── minute (0 - 59)
│ ┌───────────── hour (0 - 23)
│ │ ┌───────────── day of month (1 - 31)
│ │ │ ┌───────────── month (1 - 12)
│ │ │ │ ┌───────────── day of week (0 - 6) (Sunday = 0)
│ │ │ │ │
* * * * *

Examples

ExpressionDescription
0 9 * * *Every day at 9:00 AM UTC
0 9 * * 1-5Weekdays at 9:00 AM UTC
0 */2 * * *Every 2 hours
30 8 1 * *1st of each month at 8:30 AM UTC
0 0 * * 0Every Sunday at midnight UTC

Sync Triggers

Syncs can be triggered by:

SourceDescription
scheduledAutomatic cron-based execution
manualUser-initiated via dashboard
apiExternal API call
n8nWorkflow automation tool

Execution Flow

When a scheduled sync triggers:

  1. Cron job fires at scheduled time
  2. System checks sync config status (must be active)
  3. Creates new SyncRun record with status running
  4. NetSuite Map/Reduce script executes
  5. Data batches posted to /api/ingest/{tenantId}
  6. SyncRun updated with results

Monitoring Schedules

View upcoming and past sync runs:

  1. Navigate to Portal → Sync Configs
  2. Select a configuration
  3. View Run History tab

Sync Run Status

StatusDescription
runningCurrently executing
completedFinished successfully
failedEncountered an error
cancelledManually stopped

Pausing Syncs

To temporarily stop a sync:

  1. Navigate to Portal → Sync Configs
  2. Select the configuration
  3. Change Status to paused
  4. Click Save

The sync will not run until status is changed back to active.