Update milestone progress
Updates milestone completion percentage and/or projected date through Delivery command authority.
POST
/api/v1/delivery/milestones/:id/progressAuthorization
delivery-timeline:writeapi key scoperequiredRequired scope when calling with an API key.
Path parameters
idstringrequiredDelivery milestone ID
Example: dm_01k2...
Request body
completion_pctnumberoptionalInteger percentage from 0 to 100
projected_datestringoptionalYYYY-MM-DD projection, or null to clear
expected_updated_atstringoptionalOptimistic concurrency token
reasonstringoptionalReason stored in Delivery audit
confirmbooleanrequiredMust be true
Example request
{
"completion_pct": 70,
"projected_date": "2026-08-02",
"expected_updated_at": "2026-07-15T14:20:00Z",
"confirm": true
}Request
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}'Examples use a placeholder key from your environment. Store your key in $DS_API_KEY — never commit it.
Response
200 OK
{
"data": {
"ok": true,
"milestone": {
"id": "dm_01k2...",
"completion_pct": 70,
"projected_date": "2026-08-02"
},
"changed_fields": [
"completion_pct",
"projected_date"
],
"event_type": "milestone.progress_updated",
"idempotency_replayed": false,
"errors": []
}
}Errors
401
missing_authNo credentials provided
401
invalid_api_keyAPI key is invalid or revoked
400
bad_requestMissing or invalid request fields
403
scope_insufficientKey lacks the required write scope
403
scope_insufficientKey lacks delivery-timeline:write scope
400
invalid_completion_pctcompletion_pct must be between 0 and 100