Shipeasy
Flags experimentsApiOperations

Get analysis timeseries

Same row shape as /results, but returns every daily slice rather than the latest. Filter to a single metric with the metric query parameter.

Same row shape as /results, but returns every daily slice rather than the latest. Filter to a single metric with the metric query parameter.

Use case

Drive a chart of metric movement over the experiment runtime, or sanity-check the lift is monotonic before deciding.

GET
/api/admin/experiments/{id}/timeseries

Authorization

bearerSdkKey
AuthorizationBearer <token>

Pass an admin SDK key as Authorization: Bearer sdk_admin_…. Mint via POST /api/admin/keys with type: "admin".

In: header

Path Parameters

id*string

Stable opaque experiment id (exp_…) or the experiment's name.

Length1 <= length <= 128

Query Parameters

metric?string

Optional metric name to filter the series.

Header Parameters

X-Project-Id?string

Project the request operates on. Optional — defaults to the project the SDK key belongs to; pass it only to scope a multi-project key (the generated client sets it once from its configuration, so per-call callers never thread it).

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://shipeasy.ai/api/admin/experiments/string/timeseries"
{
  "experiment": {
    "id": "exp_01j7wb12c3d4e5f6g7h8j9k0l1",
    "name": "checkout_button_color",
    "status": "running"
  },
  "series": [
    {
      "metric": "checkout_completed",
      "groupName": "treatment",
      "ds": "2026-05-08",
      "n": 11200,
      "mean": 0.1903,
      "variance": 0.1541,
      "delta": 0.0071,
      "deltaPct": 3.9,
      "ci95Low": -0.0004,
      "ci95High": 0.0146,
      "ci99Low": -0.0028,
      "ci99High": 0.017,
      "ciLow": -0.0004,
      "ciHigh": 0.0146,
      "pValue": 0.034,
      "expectedN": 15000,
      "realizedMde": 0.0083,
      "srmPValue": 0.79,
      "srmDetected": 0,
      "msprtSignificant": null,
      "msprtLambda": null,
      "isFinal": 0,
      "peekWarning": 0
    },
    {
      "metric": "checkout_completed",
      "groupName": "treatment",
      "ds": "2026-05-09",
      "n": 12519,
      "mean": 0.1922,
      "variance": 0.1553,
      "delta": 0.0088,
      "deltaPct": 4.8,
      "ci95Low": 0.0015,
      "ci95High": 0.0161,
      "ci99Low": -0.0008,
      "ci99High": 0.0184,
      "ciLow": 0.0015,
      "ciHigh": 0.0161,
      "pValue": 0.018,
      "expectedN": 15000,
      "realizedMde": 0.0079,
      "srmPValue": 0.82,
      "srmDetected": 0,
      "msprtSignificant": null,
      "msprtLambda": null,
      "isFinal": 0,
      "peekWarning": 0
    }
  ]
}
{
  "error": "Malformed request (bad JSON, missing project scope).",
  "code": "BAD_REQUEST"
}
{
  "error": "Missing or invalid admin SDK key.",
  "code": "UNAUTHORIZED"
}

{
  "error": "Key is valid but not allowed to act on this project.",
  "code": "FORBIDDEN"
}

{
  "error": "The resource does not exist or is not visible to the caller.",
  "code": "NOT_FOUND"
}

{
  "error": "A resource with this name already exists in the project.",
  "code": "ALREADY_EXISTS"
}

{
  "error": "The request body failed structural (schema) validation.",
  "code": "VALIDATION"
}

Was this page helpful?
✎ Edit this page