contracts

Update commitment schedule

patch/v3/contracts/{id}/commitments/{commitmentId}/schedules/{scheduleId}

Request

  • Base URL: https://integrators.prod.api.tabsplatform.com
  • URL: https://integrators.prod.api.tabsplatform.com/v3/contracts/{id}/commitments/{commitmentId}/schedules/{scheduleId}
  • Auth: API key in header Authorization

Path parameters

idstring required

Contract Id

commitmentIdstring required

Commitment Id

scheduleIdstring required

Schedule Id

Request body

endDatestring

New schedule end date (YYYY-MM-DD, inclusive). Only valid on the LAST schedule of the commitment (changes on earlier schedules would break contiguity). Must be ≥ the end of the latest commitment period on this schedule that has a non-voided invoice, and must align with a period boundary of every linked base BT's billing cadence. When composed with startDateChange on a single-schedule commitment, this value wins as the final absolute endDate (applied after startDateChange).

commitmentInterval'DAILY' | 'WEEKLY' | 'MONTHLY' | 'QUARTERLY' | 'SEMI_ANNUAL' | 'YEARLY'

New cadence for the schedule's commitment periods. Rejected if any period on this schedule already has a non-voided invoice, or if the schedule is multi-step (invariant #7: multi-step schedules must be full-duration).

prepaymentScheduleType'FULL_UPFRONT' | 'PER_COMMITMENT_PERIOD' | 'SPLIT_ACROSS_BILLING_PERIODS'

New prepayment schedule type. Rejected if any period on this schedule already has a non-voided invoice.

cascadeBillingTermsboolean required

Required. When true, extend or shorten step-linked base BTs (and their POBs) to match the new schedule endDate, plus resync container BT dates. When false, the schedule mutates alone and the caller is responsible for BT realignment.

billingTermsToAddobject[]

Per-step billing term additions. Each element is { [stepId]: btId[] }. All steps must end with the same event-type set (invariant #6). Only base BT links (billingTermCommitmentType=null) can be added here.

billingTermsToDeleteobject[]

Per-step billing term removals. Each element is { [stepId]: btId[] }. The BT must currently be linked as a base BT on that step.

Response

Schedule patched

successboolean required

Boolean with true=success, false=failure

messagestring required

Plain-text description of the result

Changes

No recorded changes to this operation across all 1 revision of this API.