schedule_delivery

Updated May 29, 20261 min read

Set or revise the shipment delivery schedule.

The right tool when the customer wants delivery on a specific date or window — or wants to push an existing scheduled delivery.

Parameters

NameTypeRequiredDescription
tenantIdstringYesThe tenant.
shipment_idstringYesCarriyo shipment ID or partner_shipment_reference.
scheduled_datestringNoDate-only delivery schedule.
scheduled_fromstringNoISO 8601 delivery window start.
scheduled_tostringNoISO 8601 delivery window end.

Schedule fields

Pass at least one schedule field. Two forms supported:

// Single date
{ "scheduled_date": "2026-05-10" }

// Time window
{
  "scheduled_from": "2026-05-10T13:00:00+04:00",
  "scheduled_to":   "2026-05-10T17:00:00+04:00"
}

Carrier support varies — some only accept dates, some accept windows with specific granularities (2-hour, 4-hour). Test once with the target carrier.

Example agent prompts

"Schedule delivery for Sunday."

schedule_delivery(
  tenantId="…",
  shipment_id="SHP-12345",
  scheduled_date="2026-05-10"
)

"Customer wants Sunday afternoon, 1pm–5pm KSA time."

schedule_delivery(
  tenantId="…",
  shipment_id="SHP-12345",
  scheduled_from="2026-05-10T13:00:00+03:00",
  scheduled_to="2026-05-10T17:00:00+03:00"
)

Common chain

Reschedule a delivery on customer request — the canonical two-step pattern that wraps this tool.

  • schedule_collection — the pickup-side counterpart.
  • get_shipment — confirm the shipment is in a state where the delivery slot can still be changed (not already delivered).