Capabilities
Milestones & Workstreams
Read governed delivery timeline geometry and run explicit Delivery milestone commands without letting advisory phase geometry become schedule authority.
Interfaces
REST exposes delivery timeline reads plus explicit milestone status, target-date, and progress commands.
MCP tools read the same delivery timeline surface and run the same confirmed milestone commands as REST.
GraphQL exposes deliveryTimeline, deliveryMilestones, deliveryMilestone, deliveryWorkstreams, and explicit milestone command mutations.
Milestone command facts are emitted through the durable webhook outbox for status, target-date, and progress changes.
Required scopes
delivery-timeline:readAPI key scoperequireddelivery-timeline:writeAPI key scoperequiredExamples
Get delivery timeline — view in REST API reference
curl -X GET "https://www.digitalstack360.com/api/v1/delivery/timeline?project_id=proj_abc123" \
-H "Authorization: Bearer $DS_API_KEY"List delivery milestones — view in REST API reference
curl -X GET "https://www.digitalstack360.com/api/v1/delivery/milestones?project_id=proj_abc123" \
-H "Authorization: Bearer $DS_API_KEY"Retrieve a delivery milestone — view in REST API reference
curl -X GET "https://www.digitalstack360.com/api/v1/delivery/milestones/dm_01k2..." \
-H "Authorization: Bearer $DS_API_KEY"List delivery workstreams — view in REST API reference
curl -X GET "https://www.digitalstack360.com/api/v1/delivery/workstreams?project_id=proj_abc123" \
-H "Authorization: Bearer $DS_API_KEY"Update milestone status — view in REST API reference
curl -X POST "https://www.digitalstack360.com/api/v1/delivery/milestones/dm_01k2.../status" \
-H "Authorization: Bearer $DS_API_KEY" \
-H "Idempotency-Key: milestone-status-42-v1" \
-H "Content-Type: application/json" \
-d '{"status":"at_risk","expected_updated_at":"2026-07-15T14:20:00Z","reason":"Provider evidence shows blocked scope.","confirm":true}'Update milestone target date — view in REST API reference
curl -X POST "https://www.digitalstack360.com/api/v1/delivery/milestones/dm_01k2.../target-date" \
-H "Authorization: Bearer $DS_API_KEY" \
-H "Idempotency-Key: milestone-target-42-v1" \
-H "Content-Type: application/json" \
-d '{"target_date":"2026-08-07","expected_updated_at":"2026-07-15T14:20:00Z","reason":"Customer dependency moved one week.","confirm":true}'Update milestone progress — view in REST API reference
curl -X POST "https://www.digitalstack360.com/api/v1/delivery/milestones/dm_01k2.../progress" \
-H "Authorization: Bearer $DS_API_KEY" \
-H "Idempotency-Key: milestone-progress-42-v1" \
-H "Content-Type: application/json" \
-d '{"completion_pct":70,"projected_date":"2026-08-02","expected_updated_at":"2026-07-15T14:20:00Z","confirm":true}'GraphQL examples
delivery-timeline:readRead milestones and workstreams together for one project.
query DeliveryTimeline($projectId: ID!) {
deliveryTimeline(projectId: $projectId) {
projectId
milestones {
id
title
status
targetDate
completionPct
scopedWorkItemIds
}
workstreams {
id
name
status
isDefault
}
}
}delivery-timeline:writeApply one explicit governed milestone status command.
mutation UpdateDeliveryMilestoneStatus($input: UpdateDeliveryMilestoneStatusInput!) {
updateDeliveryMilestoneStatus(input: $input) {
ok
milestone { id title status updatedAt }
changedFields
eventType
idempotencyReplayed
errors { code message path }
}
}delivery-timeline:writeShift the explicit milestone target date and update progress without resizing a phase or moving execution work.
mutation UpdateDeliveryMilestonePlan($target: UpdateDeliveryMilestoneTargetDateInput!, $progress: UpdateDeliveryMilestoneProgressInput!) {
updateDeliveryMilestoneTargetDate(input: $target) {
ok
milestone { id targetDate updatedAt }
eventType
errors { code message path }
}
updateDeliveryMilestoneProgress(input: $progress) {
ok
milestone { id completionPct projectedDate updatedAt }
eventType
errors { code message path }
}
}Webhook emits
milestone.status_changedAvailableA governed milestone status command changed the Delivery milestone status.
Resource: milestone
milestone_idproject_idfrom_statusto_statusoccurred_atmilestone.target_date_changedAvailableA governed milestone target-date command changed the explicit target date.
Resource: milestone
milestone_idproject_idprior_target_datetarget_dateoccurred_atmilestone.progress_updatedAvailableA governed milestone progress command changed completion percentage and/or projected date.
Resource: milestone
milestone_idproject_idprior_completion_pctcompletion_pctprior_projected_dateprojected_dateoccurred_atAll webhook events use the shared v1 envelope, signed delivery, and minimal payload rule. Fetch by resource id for expanded data.
System boundaries
Systems commonly integrated with this capability. Each row states the boundary and its native status; it does not transfer canonical authority to the connected system.
DigitalStack owns
- • Delivery milestone identity, status, target date, projected date, progress, and audit-command path
- • Milestone-to-work scoping via delivery_milestone_scope
- • Read-only workstream projection through the execution read provider
Source systems own
- • Provider issue/board evidence that may inform milestone status and progress
- • Provider-native workstream/project labels unless explicitly promoted into DigitalStack authority
Typical integration patterns
DigitalStack DeliveryJira / Azure DevOps / Linear