Read one immutable protocol and its optional comparison
GET
/v1/quality/checks/benchmark/{evaluationId}/experiments/{experimentId}How to call this endpoint
Every ACP API request uses bearer authentication. The examples here show the actual request path, auth header, and body shape that the platform expects.
Path, query, and header parameters
These parameters control which ACP object the endpoint acts on and how the request is processed.
Path parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| evaluationId | path | string | Yes | — |
| experimentId | path | string | Yes | — |
Query parameters
None.
Body schema
This endpoint does not require a request body.
None.
What the API returns
Each response code below includes the documented payload shape for the ACP API.
200Authorized experimentapplication/json
| Field | Type | Required | Description |
|---|---|---|---|
| experiment | object | Yes | — |
| experiment.schemaVersion | computer_agents_quality_experiment_v1 | Yes | — |
| experiment.id | string | Yes | Unique identifier. |
| experiment.name | string | Yes | Human-readable name. |
| experiment.hypothesis | string | Yes | — |
| experiment.allowedChanges | string | Yes | — |
| experiment.baselineMeasurementId | string | Yes | — |
| experiment.candidateObservationRunId | string | Yes | — |
| experiment.primaryMetricId | string | Yes | — |
| experiment.minimumImprovementPercentagePoints | number | Yes | — |
| experiment.minimumPairedExamples | integer | Yes | — |
| experiment.guardrails | object[] | Yes | — |
| experiment.guardrails[].metricId | string | Yes | — |
| experiment.guardrails[].maximumRegressionPercentagePoints | number | Yes | — |
| experiment.evaluationId | string | Yes | — |
| experiment.versionId | string | Yes | — |
| experiment.purpose | diagnostic | Yes | — |
| experiment.design | retained_output_comparison | Yes | — |
| experiment.baselineMeasurementFingerprint | string | Yes | — |
| experiment.baselineObservationRunId | string | Yes | — |
| experiment.baselineObservationFingerprint | string | Yes | — |
| experiment.candidateObservationFingerprint | string | Yes | — |
| experiment.populationFingerprint | string | Yes | — |
| experiment.populationCount | integer | Yes | — |
| experiment.baselineSystemLabel | string | Yes | Caller-declared import label |
| experiment.candidateSystemLabel | string | Yes | Caller-declared import label |
| experiment.limits | object | Yes | — |
| experiment.limits.maximumComparisons | 1 | Yes | — |
| experiment.limits.maximumCases | 100 | Yes | — |
| experiment.limits.externalCalls | 0 | Yes | — |
| experiment.createdByUserId | string | Yes | — |
| experiment.createdAt | string | Yes | ISO 8601 timestamp. |
| experiment.fingerprint | string | Yes | — |
| comparison | null | Yes | — |
401Authentication required
None.
403Organization or permission unavailable
None.
404Experiment unavailable
None.
409Retained evidence failed integrity verification
None.
503Durable storage unavailable
None.
Read one immutable protocol and its optional comparison
Loading...
Response 200
Loading...