Rollouts API
Endpoints for creating, listing, retrieving, and deleting model rollouts.
List active rollouts
GET /api/v1/rollouts/active
Returns active rollout records across models.
Response
{
"rollouts": [
{
"rollout_id": "rol_abc123",
"model_id": "mdl_abc123",
"version": "2.0.0",
"status": "active",
"percentage": 25
}
]
}
Retrieve a rollout
GET /api/v1/models/{model_id}/rollouts/{rollout_id}
Returns rollout details and status.
Create a rollout
POST /api/v1/models/{model_id}/rollouts
Creates a rollout plan for a model version.
Body Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
version | string | Yes | Model version |
rollout_percentage | integer | Yes | Initial percentage |
target_percentage | integer | No | Final rollout percentage |
increment_step | integer | No | Step increase per interval |
start_immediately | boolean | No | Start rollout immediately |
Request
curl -X POST https://api.octomil.com/api/v1/models/mdl_abc123/rollouts \
-H "Authorization: Bearer $OCTOMIL_API_KEY" \
-H "Content-Type: application/json" \
-d '{"version":"2.0.0","rollout_percentage":10,"target_percentage":100,"increment_step":10,"start_immediately":true}'
Delete a rollout
DELETE /api/v1/models/{model_id}/rollouts/{rollout_id}
Cancels and deletes a rollout.
Errors
| Status | Error | Description |
|---|---|---|
400 | bad_request | Invalid or missing request fields |
401 | unauthorized | Missing or invalid API key |
404 | not_found | Resource does not exist |
409 | conflict | Resource already exists or state conflict |
429 | rate_limited | Too many requests; check Retry-After |
500 | internal_error | Unexpected server error |