scheduling

Schedule Uploaded Contacts

Changed on

Trigger OTTR scheduling for contacts in awaiting_scheduling status.

Without a body this processes all contacts across all campaigns that are in 'awaiting_scheduling' status, exactly as before. The optional body scopes the run to one campaign and/or spreads the contacts over N open campaign days instead of the next 24 hours. It uses Thompson sampling to assign optimal next_follow_up_date_time values and transitions contacts to 'awaiting_contact'.

The scheduling process:

  1. Fetches contacts in batches of 1000
  2. Groups by campaign_id and timezone
  3. Gets optimal hour distribution via Thompson sampling
  4. Samples a specific time for each contact
  5. Updates contacts to awaiting_contact status with scheduled time

Returns: ScheduleUploadResponse with counts and processing time

post/api/v1/schedule-uploaded-contacts

Request

  • Base URL
    https://api.outrival.com (the document declares no server; this is the origin it was published from)
  • URL
    https://api.outrival.com/api/v1/schedule-uploaded-contacts
  • Auth
    HTTP bearer

Request body

campaign_idstring uuid nullable

Only schedule this campaign's awaiting_scheduling contacts.

spread_daysinteger

Number of OPEN campaign days to spread the contacts over. 1 schedules within the next 24 hours (historical behaviour).

Response

Successful Response

total_scheduledinteger required
total_failedinteger required
processing_time_secondsnumber required
errorstring nullable

Changes