Rollout Service

List endpoint rollouts

GET
/projects/{projectId}/endpoints/{endpointId}/rollouts

Lists rollout histories for an endpoint. Use filter=ROLLOUT_FILTER_ACTIVE to return only the active rollout, if one exists.

Authorization

bearerAuth
AuthorizationBearer <token>

In: header

Path Parameters

projectId*string

Project identifier.

endpointId*string

Endpoint identifier.

Query Parameters

limit?integer

Maximum number of rollouts to return. Max 500, defaults to 50.

after?string

Cursor from a previous rollout list response.

filter?string

Narrow results to active or terminal rollouts. Omit to list all rollouts.

Value in

  • "ROLLOUT_FILTER_ACTIVE"
  • "ROLLOUT_FILTER_TERMINAL"

Response Body

application/json

application/json

curl -X GET "https://example.com/projects/string/endpoints/string/rollouts"
{  "data": [    {      "id": "string",      "endpointId": "string",      "sourceDeploymentId": "string",      "targetDeploymentId": "string",      "strategy": "ROLLOUT_STRATEGY_TYPE_ROLLING",      "state": "ROLLOUT_STATE_RUNNING",      "currentStep": 0,      "currentTrafficPercent": 0,      "createdAt": "2019-08-24T14:15:22Z",      "startedAt": "2019-08-24T14:15:22Z",      "completedAt": "2019-08-24T14:15:22Z",      "etag": "string",      "status": {        "totalSteps": 0,        "condition": {          "category": "ROLLOUT_FAILURE_CATEGORY_METRIC_REGRESSION",          "message": "string",          "atStep": 0,          "observedAt": "2019-08-24T14:15:22Z",          "metrics": [            {              "name": "string",              "stat": "METRIC_STAT_TYPE_AVG",              "percentile": 0,              "check": "METRIC_CHECK_TYPE_THRESHOLD",              "sourceValue": 0,              "targetValue": 0,              "threshold": 0,              "operator": "THRESHOLD_OPERATOR_GT",              "maxRegressionPercent": 0,              "direction": "REGRESSION_DIRECTION_HIGHER_IS_WORSE",              "verdict": "METRIC_VERDICT_PASS",              "failureReason": "string"            }          ],          "type": "CapacityLimited"        },        "steps": [          {            "stepIndex": 0,            "targetTrafficPercent": 0,            "state": "ROLLOUT_STEP_STATE_PENDING",            "metrics": [              {                "name": "string",                "stat": "METRIC_STAT_TYPE_AVG",                "percentile": 0,                "check": "METRIC_CHECK_TYPE_THRESHOLD",                "sourceValue": 0,                "targetValue": 0,                "threshold": 0,                "operator": "THRESHOLD_OPERATOR_GT",                "maxRegressionPercent": 0,                "direction": "REGRESSION_DIRECTION_HIGHER_IS_WORSE",                "verdict": "METRIC_VERDICT_PASS",                "failureReason": "string"              }            ],            "startedAt": "2019-08-24T14:15:22Z",            "completedAt": "2019-08-24T14:15:22Z",            "failureReason": "string"          }        ],        "updatedAt": "2019-08-24T14:15:22Z",        "conditions": [          {            "category": "ROLLOUT_FAILURE_CATEGORY_METRIC_REGRESSION",            "message": "string",            "atStep": 0,            "observedAt": "2019-08-24T14:15:22Z",            "metrics": [              {                "name": "string",                "stat": "METRIC_STAT_TYPE_AVG",                "percentile": 0,                "check": "METRIC_CHECK_TYPE_THRESHOLD",                "sourceValue": 0,                "targetValue": 0,                "threshold": 0,                "operator": "THRESHOLD_OPERATOR_GT",                "maxRegressionPercent": 0,                "direction": "REGRESSION_DIRECTION_HIGHER_IS_WORSE",                "verdict": "METRIC_VERDICT_PASS",                "failureReason": "string"              }            ],            "type": "CapacityLimited"          }        ]      },      "pauseInfo": {        "reason": "string",        "pausedAt": "2019-08-24T14:15:22Z"      }    }  ],  "next_cursor": "string",  "object": "list"}