Experiments
Endpoints for managing on-page A/B tests and personalization experiments, including their lifecycle and results.
Endpoints for creating, listing, updating, starting, stopping, pausing, resuming, and inspecting on-page A/B tests and personalization experiments. Variants are managed via the Experiment Variants endpoints. Account-level bootstrap configuration lives on the Experiment Settings endpoints.
Content personalization uses an experiment with type: "personalization" and one DOM-modification or redirect treatment. The API creates the control row automatically, and personalization does not require a primary metric. See Content Personalization for setup guidance.
GET/rest/v1/experiments
Authorization
apiKey Ours Privacy API key
In: header
Query Parameters
Maximum number of items to return. Defaults to 25; values below 1 are clamped to 1 and values above 100 are clamped to 100.
Opaque pagination cursor from pagination.nextCursor in the previous response. Do not decode or modify it. Malformed cursors return 400 Bad Request.
Optional lifecycle-state filter.
Value in
- "completed"
- "draft"
- "paused"
- "running"
Optional experiment-type filter.
Value in
- "ab"
- "multivariate"
- "personalization"
Optional case-insensitive text search matched against experiment ID, name, and description.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/rest/v1/experiments"{ "entities": [ { "id": "exp_01HZX8TK6TSN91C5XWZP3N1M4E", "key": "homepage-hero-headline-test", "name": "Homepage Hero Headline Test", "description": "Test whether benefit-led copy increases demo requests.", "type": "ab", "status": "completed", "createdAt": "2026-04-30T18:42:11.219Z", "updatedAt": "string", "startedAt": "string", "analysisStartedAt": "string", "stoppedAt": "string", "trafficAllocation": 100, "includeQueryString": false, "winnerVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "rolloutVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "targetingRules": { "urlPatterns": [ "/pricing*", "get.example.com/learn-more" ], "audienceId": "string", "visitorProperties": {}, "visitorStatus": "string", "queryParams": [ { "key": "utm_campaign", "operator": "contains", "value": "spring-launch" } ] }, "metrics": { "primary": {}, "secondary": [ { "eventName": "demo_requested", "funnelId": "string" } ] }, "analysisConfig": {}, "analysisMetricSnapshot": {}, "variants": [ { "id": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "experimentId": "exp_01HZX8TK6TSN91C5XWZP3N1M4E", "name": "Headline Variant B", "isControl": false, "weight": 50, "variantType": "string", "redirectUrl": "https://www.example.com/pricing-v2", "domModifications": [ { "selector": "h1.hero-title", "action": "customCss", "value": "Start your free trial", "styles": [ { "property": "background-color", "value": "#10B981" } ], "attribute": {} } ] } ] } ], "pagination": { "nextCursor": "string", "hasMore": true }}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}POST/rest/v1/experiments
Authorization
apiKey Ours Privacy API key
In: header
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/rest/v1/experiments" \ -H "Content-Type: application/json" \ -d '{ "experimentSettingsId": "settings_01HZX9BB73EY2Q37VGK5A0VW7A", "name": "Homepage Hero Headline Test" }'{ "id": "exp_01HZX8TK6TSN91C5XWZP3N1M4E", "key": "homepage-hero-headline-test", "name": "Homepage Hero Headline Test", "description": "Test whether benefit-led copy increases demo requests.", "type": "ab", "status": "completed", "createdAt": "2026-04-30T18:42:11.219Z", "updatedAt": "string", "startedAt": "string", "analysisStartedAt": "string", "stoppedAt": "string", "trafficAllocation": 100, "includeQueryString": false, "winnerVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "rolloutVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "targetingRules": { "urlPatterns": [ "/pricing*", "get.example.com/learn-more" ], "audienceId": "string", "visitorProperties": {}, "visitorStatus": "string", "queryParams": [ { "key": "utm_campaign", "operator": "contains", "value": "spring-launch" } ] }, "metrics": { "primary": {}, "secondary": [ { "eventName": "demo_requested", "funnelId": "string" } ] }, "analysisConfig": {}, "analysisMetricSnapshot": {}, "variants": [ { "id": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "experimentId": "exp_01HZX8TK6TSN91C5XWZP3N1M4E", "name": "Headline Variant B", "isControl": false, "weight": 50, "variantType": "string", "redirectUrl": "https://www.example.com/pricing-v2", "domModifications": [ { "selector": "h1.hero-title", "action": "customCss", "value": "Start your free trial", "styles": [ { "property": "background-color", "value": "#10B981" } ], "attribute": {} } ] } ]}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}GET/rest/v1/experiments/{id}
Authorization
apiKey Ours Privacy API key
In: header
Path Parameters
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/rest/v1/experiments/string"{ "id": "exp_01HZX8TK6TSN91C5XWZP3N1M4E", "key": "homepage-hero-headline-test", "name": "Homepage Hero Headline Test", "description": "Test whether benefit-led copy increases demo requests.", "type": "ab", "status": "completed", "createdAt": "2026-04-30T18:42:11.219Z", "updatedAt": "string", "startedAt": "string", "analysisStartedAt": "string", "stoppedAt": "string", "trafficAllocation": 100, "includeQueryString": false, "winnerVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "rolloutVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "targetingRules": { "urlPatterns": [ "/pricing*", "get.example.com/learn-more" ], "audienceId": "string", "visitorProperties": {}, "visitorStatus": "string", "queryParams": [ { "key": "utm_campaign", "operator": "contains", "value": "spring-launch" } ] }, "metrics": { "primary": {}, "secondary": [ { "eventName": "demo_requested", "funnelId": "string" } ] }, "analysisConfig": {}, "analysisMetricSnapshot": {}, "variants": [ { "id": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "experimentId": "exp_01HZX8TK6TSN91C5XWZP3N1M4E", "name": "Headline Variant B", "isControl": false, "weight": 50, "variantType": "string", "redirectUrl": "https://www.example.com/pricing-v2", "domModifications": [ { "selector": "h1.hero-title", "action": "customCss", "value": "Start your free trial", "styles": [ { "property": "background-color", "value": "#10B981" } ], "attribute": {} } ] } ]}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}PATCH/rest/v1/experiments/{id}
Authorization
apiKey Ours Privacy API key
In: header
Path Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X PATCH "https://example.com/rest/v1/experiments/string" \ -H "Content-Type: application/json" \ -d '{}'{ "id": "exp_01HZX8TK6TSN91C5XWZP3N1M4E", "key": "homepage-hero-headline-test", "name": "Homepage Hero Headline Test", "description": "Test whether benefit-led copy increases demo requests.", "type": "ab", "status": "completed", "createdAt": "2026-04-30T18:42:11.219Z", "updatedAt": "string", "startedAt": "string", "analysisStartedAt": "string", "stoppedAt": "string", "trafficAllocation": 100, "includeQueryString": false, "winnerVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "rolloutVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "targetingRules": { "urlPatterns": [ "/pricing*", "get.example.com/learn-more" ], "audienceId": "string", "visitorProperties": {}, "visitorStatus": "string", "queryParams": [ { "key": "utm_campaign", "operator": "contains", "value": "spring-launch" } ] }, "metrics": { "primary": {}, "secondary": [ { "eventName": "demo_requested", "funnelId": "string" } ] }, "analysisConfig": {}, "analysisMetricSnapshot": {}, "variants": [ { "id": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "experimentId": "exp_01HZX8TK6TSN91C5XWZP3N1M4E", "name": "Headline Variant B", "isControl": false, "weight": 50, "variantType": "string", "redirectUrl": "https://www.example.com/pricing-v2", "domModifications": [ { "selector": "h1.hero-title", "action": "customCss", "value": "Start your free trial", "styles": [ { "property": "background-color", "value": "#10B981" } ], "attribute": {} } ] } ]}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}DELETE/rest/v1/experiments/{id}
Authorization
apiKey Ours Privacy API key
In: header
Path Parameters
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X DELETE "https://example.com/rest/v1/experiments/string"true{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}POST/rest/v1/experiments/{id}/start
Authorization
apiKey Ours Privacy API key
In: header
Path Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/rest/v1/experiments/string/start" \ -H "Content-Type: application/json" \ -d '{}'{ "publishStatus": "pending_publish", "concurrentVersionChanges": 1, "experiment": { "id": "exp_01HZX8TK6TSN91C5XWZP3N1M4E", "key": "homepage-hero-headline-test", "name": "Homepage Hero Headline Test", "description": "Test whether benefit-led copy increases demo requests.", "type": "ab", "status": "completed", "createdAt": "2026-04-30T18:42:11.219Z", "updatedAt": "string", "startedAt": "string", "analysisStartedAt": "string", "stoppedAt": "string", "trafficAllocation": 100, "includeQueryString": false, "winnerVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "rolloutVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "targetingRules": { "urlPatterns": [ "/pricing*", "get.example.com/learn-more" ], "audienceId": "string", "visitorProperties": {}, "visitorStatus": "string", "queryParams": [ { "key": "utm_campaign", "operator": "contains", "value": "spring-launch" } ] }, "metrics": { "primary": {}, "secondary": [ { "eventName": "demo_requested", "funnelId": "string" } ] }, "analysisConfig": {}, "analysisMetricSnapshot": {} }}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}POST/rest/v1/experiments/{id}/stop
Authorization
apiKey Ours Privacy API key
In: header
Path Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Stopping always publishes the new live config immediately so visitors stop being assigned — there is no publishAfterStop flag because deferring the publish would leave a completed experiment still serving traffic. Send {} to stop without a recorded winner; everyone returns to the original unless you also pass rolloutVariantId.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/rest/v1/experiments/string/stop" \ -H "Content-Type: application/json" \ -d '{}'{ "publishStatus": "pending_publish", "concurrentVersionChanges": 1, "experiment": { "id": "exp_01HZX8TK6TSN91C5XWZP3N1M4E", "key": "homepage-hero-headline-test", "name": "Homepage Hero Headline Test", "description": "Test whether benefit-led copy increases demo requests.", "type": "ab", "status": "completed", "createdAt": "2026-04-30T18:42:11.219Z", "updatedAt": "string", "startedAt": "string", "analysisStartedAt": "string", "stoppedAt": "string", "trafficAllocation": 100, "includeQueryString": false, "winnerVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "rolloutVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "targetingRules": { "urlPatterns": [ "/pricing*", "get.example.com/learn-more" ], "audienceId": "string", "visitorProperties": {}, "visitorStatus": "string", "queryParams": [ { "key": "utm_campaign", "operator": "contains", "value": "spring-launch" } ] }, "metrics": { "primary": {}, "secondary": [ { "eventName": "demo_requested", "funnelId": "string" } ] }, "analysisConfig": {}, "analysisMetricSnapshot": {} }}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}POST/rest/v1/experiments/{id}/rollout
Authorization
apiKey Ours Privacy API key
In: header
Path Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/rest/v1/experiments/string/rollout" \ -H "Content-Type: application/json" \ -d '{ "variantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8" }'{ "publishStatus": "pending_publish", "concurrentVersionChanges": 1, "experiment": { "id": "exp_01HZX8TK6TSN91C5XWZP3N1M4E", "key": "homepage-hero-headline-test", "name": "Homepage Hero Headline Test", "description": "Test whether benefit-led copy increases demo requests.", "type": "ab", "status": "completed", "createdAt": "2026-04-30T18:42:11.219Z", "updatedAt": "string", "startedAt": "string", "analysisStartedAt": "string", "stoppedAt": "string", "trafficAllocation": 100, "includeQueryString": false, "winnerVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "rolloutVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "targetingRules": { "urlPatterns": [ "/pricing*", "get.example.com/learn-more" ], "audienceId": "string", "visitorProperties": {}, "visitorStatus": "string", "queryParams": [ { "key": "utm_campaign", "operator": "contains", "value": "spring-launch" } ] }, "metrics": { "primary": {}, "secondary": [ { "eventName": "demo_requested", "funnelId": "string" } ] }, "analysisConfig": {}, "analysisMetricSnapshot": {} }}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}POST/rest/v1/experiments/{id}/end-rollout
Authorization
apiKey Ours Privacy API key
In: header
Path Parameters
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/rest/v1/experiments/string/end-rollout"{ "publishStatus": "pending_publish", "concurrentVersionChanges": 1, "experiment": { "id": "exp_01HZX8TK6TSN91C5XWZP3N1M4E", "key": "homepage-hero-headline-test", "name": "Homepage Hero Headline Test", "description": "Test whether benefit-led copy increases demo requests.", "type": "ab", "status": "completed", "createdAt": "2026-04-30T18:42:11.219Z", "updatedAt": "string", "startedAt": "string", "analysisStartedAt": "string", "stoppedAt": "string", "trafficAllocation": 100, "includeQueryString": false, "winnerVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "rolloutVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "targetingRules": { "urlPatterns": [ "/pricing*", "get.example.com/learn-more" ], "audienceId": "string", "visitorProperties": {}, "visitorStatus": "string", "queryParams": [ { "key": "utm_campaign", "operator": "contains", "value": "spring-launch" } ] }, "metrics": { "primary": {}, "secondary": [ { "eventName": "demo_requested", "funnelId": "string" } ] }, "analysisConfig": {}, "analysisMetricSnapshot": {} }}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}POST/rest/v1/experiments/{id}/winner
Authorization
apiKey Ours Privacy API key
In: header
Path Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Declare, change, or clear the winning variant on a completed experiment. Reporting metadata only — it does not change what visitors see and does not republish. To make the winner live, roll it out via POST /experiments/{id}/rollout.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/rest/v1/experiments/string/winner" \ -H "Content-Type: application/json" \ -d '{}'{ "id": "exp_01HZX8TK6TSN91C5XWZP3N1M4E", "key": "homepage-hero-headline-test", "name": "Homepage Hero Headline Test", "description": "Test whether benefit-led copy increases demo requests.", "type": "ab", "status": "completed", "createdAt": "2026-04-30T18:42:11.219Z", "updatedAt": "string", "startedAt": "string", "analysisStartedAt": "string", "stoppedAt": "string", "trafficAllocation": 100, "includeQueryString": false, "winnerVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "rolloutVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "targetingRules": { "urlPatterns": [ "/pricing*", "get.example.com/learn-more" ], "audienceId": "string", "visitorProperties": {}, "visitorStatus": "string", "queryParams": [ { "key": "utm_campaign", "operator": "contains", "value": "spring-launch" } ] }, "metrics": { "primary": {}, "secondary": [ { "eventName": "demo_requested", "funnelId": "string" } ] }, "analysisConfig": {}, "analysisMetricSnapshot": {}}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}POST/rest/v1/experiments/{id}/pause
Authorization
apiKey Ours Privacy API key
In: header
Path Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/rest/v1/experiments/string/pause" \ -H "Content-Type: application/json" \ -d '{}'{ "publishStatus": "pending_publish", "concurrentVersionChanges": 1, "experiment": { "id": "exp_01HZX8TK6TSN91C5XWZP3N1M4E", "key": "homepage-hero-headline-test", "name": "Homepage Hero Headline Test", "description": "Test whether benefit-led copy increases demo requests.", "type": "ab", "status": "completed", "createdAt": "2026-04-30T18:42:11.219Z", "updatedAt": "string", "startedAt": "string", "analysisStartedAt": "string", "stoppedAt": "string", "trafficAllocation": 100, "includeQueryString": false, "winnerVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "rolloutVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "targetingRules": { "urlPatterns": [ "/pricing*", "get.example.com/learn-more" ], "audienceId": "string", "visitorProperties": {}, "visitorStatus": "string", "queryParams": [ { "key": "utm_campaign", "operator": "contains", "value": "spring-launch" } ] }, "metrics": { "primary": {}, "secondary": [ { "eventName": "demo_requested", "funnelId": "string" } ] }, "analysisConfig": {}, "analysisMetricSnapshot": {} }}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}POST/rest/v1/experiments/{id}/resume
Authorization
apiKey Ours Privacy API key
In: header
Path Parameters
Request Body
application/json
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X POST "https://example.com/rest/v1/experiments/string/resume" \ -H "Content-Type: application/json" \ -d '{}'{ "publishStatus": "pending_publish", "concurrentVersionChanges": 1, "experiment": { "id": "exp_01HZX8TK6TSN91C5XWZP3N1M4E", "key": "homepage-hero-headline-test", "name": "Homepage Hero Headline Test", "description": "Test whether benefit-led copy increases demo requests.", "type": "ab", "status": "completed", "createdAt": "2026-04-30T18:42:11.219Z", "updatedAt": "string", "startedAt": "string", "analysisStartedAt": "string", "stoppedAt": "string", "trafficAllocation": 100, "includeQueryString": false, "winnerVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "rolloutVariantId": "var_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "targetingRules": { "urlPatterns": [ "/pricing*", "get.example.com/learn-more" ], "audienceId": "string", "visitorProperties": {}, "visitorStatus": "string", "queryParams": [ { "key": "utm_campaign", "operator": "contains", "value": "spring-launch" } ] }, "metrics": { "primary": {}, "secondary": [ { "eventName": "demo_requested", "funnelId": "string" } ] }, "analysisConfig": {}, "analysisMetricSnapshot": {} }}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}GET/rest/v1/experiments/{id}/results
Authorization
apiKey Ours Privacy API key
In: header
Path Parameters
Query Parameters
Optional override for the conversion event name. When omitted, the experiment primary metric event is used.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/rest/v1/experiments/string/results"{ "variants": [ { "id": "string", "name": "Treatment", "isControl": false, "impressions": 1842, "conversions": 213, "conversionRate": 0.1156, "probabilityToBeBest": 0.87 } ]}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}GET/rest/v1/experiments/{id}/analysis
Authorization
apiKey Ours Privacy API key
In: header
Path Parameters
Query Parameters
Optional override for the conversion event name. When omitted, the experiment primary metric event is used.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/rest/v1/experiments/string/analysis"{ "method": "BAYESIAN", "metricType": "conversion", "analysisState": "ANALYSIS_UNAVAILABLE", "evidenceState": "EVIDENCE_OF_HARM", "exploratory": true, "analysisCutoffAt": "string", "exposureCutoffAt": "string", "variants": [ { "id": "string", "name": "string", "isControl": true, "visitors": 0, "observedVisitors": 0, "impressions": 0, "conversions": 0, "conversionRate": 0, "meanValue": 0 } ], "bayesian": {}, "frequentist": {}, "sequential": {}, "dataQuality": { "crossoverVisitors": 0, "missingVisitorIdImpressions": 0, "sampleRatioMismatch": "FAIL", "sampleRatioMismatchPValue": 0 }}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}GET/rest/v1/experiments/{id}/results-time-series
Authorization
apiKey Ours Privacy API key
In: header
Path Parameters
Query Parameters
Optional override for the conversion event name. When omitted, the experiment primary metric event is used.
Inclusive lower bound of the response window, as a UTC calendar day in YYYY-MM-DD format. Defaults to the experiment start date when omitted. Values before the experiment started are silently clamped to the experiment start.
^\d{4}-\d{2}-\d{2}$Inclusive upper bound of the response window, as a UTC calendar day in YYYY-MM-DD format. Defaults to the experiment stop date for completed experiments, or today for running experiments. Values after that are silently clamped. The window between startDate and endDate must be 366 days or fewer.
^\d{4}-\d{2}-\d{2}$Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/rest/v1/experiments/string/results-time-series"{ "days": [ { "date": "2026-04-30", "variants": [ { "id": "string", "impressions": 0, "conversions": 0, "conversionRate": 0 } ] } ]}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}GET/rest/v1/experiments/{id}/session-replays
Authorization
apiKey Ours Privacy API key
In: header
Path Parameters
Query Parameters
Maximum number of items to return. Defaults to 25; values below 1 are clamped to 1 and values above 100 are clamped to 100.
Opaque pagination cursor from pagination.nextCursor in the previous response. Do not decode or modify it. Malformed cursors return 400 Bad Request.
Optional filter to a single variant ID. Returns sessions for all variants when omitted.
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/rest/v1/experiments/string/session-replays"{ "entities": [ { "sessionId": "sess_01HZX8YJH3Z3W1R2Q4M5N6P7Q8", "visitorId": "v_01HZX8TK6TSN91C5XWZP3N1M4E", "variantName": "Variant B", "startTime": "2026-05-01T18:23:11.000Z", "durationSeconds": 184, "pageCount": 5, "replayUrl": "https://app.oursprivacy.com/session-replay/replayer?sessionId=sess_01HZX8YJH3Z3W1R2Q4M5N6P7Q8&visitorId=v_01HZX8TK6TSN91C5XWZP3N1M4E&date=2026-05-01" } ], "pagination": { "nextCursor": "string", "hasMore": true }}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}{ "error": "string", "details": "string"}How is this guide?

