Read evidence from explicitly associated checks in the target's Quality context

GET/v1/quality/targets/{targetType}/{targetId}/report

Requires current access to the target and each check's run evidence. Associations organize check-level cohorts and never attest target provenance. Inaccessible checks are omitted without disclosing their identities; the report explicitly stays partial. At most twenty associated checks are composed. Existing native run APIs remain the authority for target execution.

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
NameLocationTypeRequiredDescription
targetTypepathmetronome | function | agentYes—
targetIdpathstringYes—
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.

200Bounded target-context report; hasMoreChecks explicitly identifies truncationapplication/json
FieldTypeRequiredDescription
reportobjectYes—
report.schemaVersioncomputer_agents_quality_report_v1Yes—
report.subjectobjectYes—
report.subject.kindcheckYes—
report.subject.checkKindassertion | benchmarkYes—
report.subject.idstringYesUnique identifier.
report.subject.namestringYesHuman-readable name.
report.generatedAtstringYes—
report.evidenceAsOfstringYes—
report.evidenceStateempty | unmeasured | partial | ready | invalidYesEvidence presentation state, never activation or production readiness.
report.checksobject[]Yes—
report.checks[].checkobjectYes—
report.checks[].check.idstringYesKind-namespaced identity; never use as a native resource ID
report.checks[].check.kindassertion | benchmarkYes—
report.checks[].check.resourceIdstringYesPreserved native Test or Evaluation identity
report.checks[].check.namestringYesHuman-readable name.
report.checks[].check.descriptionstringYesHuman-readable description.
report.checks[].check.statusstringYesCurrent lifecycle status.
report.checks[].check.publishedVersionIdstringYes—
report.checks[].check.caseCountintegerYes—
report.checks[].check.creatorUserIdstringYesStable user identity of the resource creator
report.checks[].check.creatorNamestringYesCurrent display name resolved through the deployment identity directory
report.checks[].check.creatorAvatarUrlstringYesCurrent creator profile image URL
report.checks[].check.createdAtstringYesISO 8601 timestamp.
report.checks[].check.updatedAtstringYesISO 8601 timestamp.
report.checks[].inventoryobjectYes—
report.checks[].inventory.nativeRunsintegerYes—
report.checks[].inventory.observationBatchesintegerYes—
report.checks[].inventory.measurementsintegerYes—
report.checks[].inventory.experimentsintegerYes—
report.checks[].inventory.comparisonsintegerYes—
report.checks[].inventory.unmeasuredObservationBatchesintegerYes—
report.checks[].evidenceStateempty | unmeasured | partial | ready | invalidYesEvidence presentation state, never activation or production readiness.
report.checks[].selectednullYes—
report.checks[].metricsobject[]Yes—
report.checks[].metrics[].idstringYesUnique identifier.
report.checks[].metrics[].labelstringYes—
report.checks[].metrics[].descriptionstringYesHuman-readable description.
report.checks[].metrics[].numeratorLabelstringYes—
report.checks[].metrics[].denominatorLabelstringYes—
report.checks[].metrics[].unitpercentYes—
report.checks[].metrics[].aggregationmicroYes—
report.checks[].metrics[].directionhigher_is_better | lower_is_better | informationalYes—
report.checks[].metrics[].statemeasured | partial | unmeasured | invalidYes—
report.checks[].metrics[].valuenumberYes—
report.checks[].metrics[].numeratorintegerYes—
report.checks[].metrics[].denominatorintegerYes—
report.checks[].metrics[].populationCountintegerYes—
report.checks[].metrics[].includedCountintegerYes—
report.checks[].metrics[].excludedCountsobjectYes—
report.checks[].metrics[].excludedCounts.unmeasuredintegerNo—
report.checks[].metrics[].excludedCounts.missing_referenceintegerNo—
report.checks[].metrics[].excludedCounts.source_changedintegerNo—
report.checks[].metrics[].excludedCounts.not_applicableintegerNo—
report.checks[].metrics[].excludedCounts.errorintegerNo—
report.checks[].metrics[].excludedCounts.skippedintegerNo—
report.checks[].metrics[].excludedCounts.missing_outputintegerNo—
report.checks[].metrics[].excludedCounts.invalidintegerNo—
report.checks[].metrics[].uncertaintyobjectYes—
report.checks[].metrics[].uncertainty.kindnot_estimatedYes—
report.checks[].metrics[].uncertainty.reasonstringYes—
report.checks[].metrics[].evidenceobjectYes—
report.checks[].metrics[].evidence.kindmeasurement | native_run | observation | experimentYes—
report.checks[].metrics[].evidence.checkKindassertion | benchmarkYes—
report.checks[].metrics[].evidence.checkIdstringYes—
report.checks[].metrics[].evidence.idstringYesUnique identifier.
report.checks[].metrics[].evidence.observationRunIdstringYes—
report.checks[].latestObservationobjectYes—
report.checks[].latestObservation.idstringYesUnique identifier.
report.checks[].latestObservation.labelstringYes—
report.checks[].latestObservation.createdAtstringYesISO 8601 timestamp.
report.checks[].latestObservation.measuredbooleanYes—
report.checks[].latestNativeRunobjectYes—
report.checks[].latestNativeRun.idstringYesUnique identifier.
report.checks[].latestNativeRun.statusstringYesCurrent lifecycle status.
report.checks[].latestNativeRun.createdAtstringYesISO 8601 timestamp.
report.checks[].comparisonsobject[]Yes—
report.checks[].comparisons[].experimentobjectYes—
report.checks[].comparisons[].experiment.schemaVersioncomputer_agents_quality_experiment_v1Yes—
report.checks[].comparisons[].experiment.idstringYesUnique identifier.
report.checks[].comparisons[].experiment.namestringYesHuman-readable name.
report.checks[].comparisons[].experiment.hypothesisstringYes—
report.checks[].comparisons[].experiment.allowedChangesstringYes—
report.checks[].comparisons[].experiment.baselineMeasurementIdstringYes—
report.checks[].comparisons[].experiment.candidateObservationRunIdstringYes—
report.checks[].comparisons[].experiment.primaryMetricIdstringYes—
report.checks[].comparisons[].experiment.minimumImprovementPercentagePointsnumberYes—
report.checks[].comparisons[].experiment.minimumPairedExamplesintegerYes—
report.checks[].comparisons[].experiment.guardrailsobject[]Yes—
report.checks[].comparisons[].experiment.guardrails[].metricIdstringYes—
report.checks[].comparisons[].experiment.guardrails[].maximumRegressionPercentagePointsnumberYes—
report.checks[].comparisons[].experiment.evaluationIdstringYes—
report.checks[].comparisons[].experiment.versionIdstringYes—
report.checks[].comparisons[].experiment.purposediagnosticYes—
report.checks[].comparisons[].experiment.designretained_output_comparisonYes—
report.checks[].comparisons[].experiment.baselineMeasurementFingerprintstringYes—
report.checks[].comparisons[].experiment.baselineObservationRunIdstringYes—
report.checks[].comparisons[].experiment.baselineObservationFingerprintstringYes—
report.checks[].comparisons[].experiment.candidateObservationFingerprintstringYes—
report.checks[].comparisons[].experiment.populationFingerprintstringYes—
report.checks[].comparisons[].experiment.populationCountintegerYes—
report.checks[].comparisons[].experiment.baselineSystemLabelstringYesCaller-declared import label
report.checks[].comparisons[].experiment.candidateSystemLabelstringYesCaller-declared import label
report.checks[].comparisons[].experiment.limitsobjectYes—
report.checks[].comparisons[].experiment.limits.maximumComparisons1Yes—
report.checks[].comparisons[].experiment.limits.maximumCases100Yes—
report.checks[].comparisons[].experiment.limits.externalCalls0Yes—
report.checks[].comparisons[].experiment.createdByUserIdstringYes—
report.checks[].comparisons[].experiment.createdAtstringYesISO 8601 timestamp.
report.checks[].comparisons[].experiment.fingerprintstringYes—
report.checks[].comparisons[].comparisonnullYes—
report.checks[].comparisons[].baselineLabelstringYes—
report.checks[].comparisons[].candidateLabelstringYes—
report.checks[].historyobjectYes—
report.checks[].history.dataobject[]Yes—
report.checks[].history.data[].idstringYesUnique identifier.
report.checks[].history.data[].kindmeasurement | native_run | observation | experimentYes—
report.checks[].history.data[].labelstringYes—
report.checks[].history.data[].createdAtstringYesISO 8601 timestamp.
report.checks[].history.data[].statusstringYesCurrent lifecycle status.
report.checks[].history.data[].versionIdstringYes—
report.checks[].history.data[].evidenceobjectYes—
report.checks[].history.data[].evidence.kindmeasurement | native_run | observation | experimentYes—
report.checks[].history.data[].evidence.checkKindassertion | benchmarkYes—
report.checks[].history.data[].evidence.checkIdstringYes—
report.checks[].history.data[].evidence.idstringYesUnique identifier.
report.checks[].history.data[].evidence.observationRunIdstringYes—
report.checks[].history.hasMorebooleanYes—
report.checks[].warningsstring[]Yes—
report.hasMoreChecksbooleanYes—
report.warningsstring[]Yes—
report.activationobjectYes—
report.activation.allowedfalseYes—
report.activation.statenot_assessedYes—
report.activation.reasonsstring[]Yes—
report.fingerprintstringYesStable across refresh timestamps; binds the report and its selected evidence receipts.
400Invalid target or unsupported query
None.
401Authentication required
None.
403Organization or coarse permission unavailable
None.
404Target or its read permission unavailable
None.
409Retained evidence integrity failed
None.
503Durable evidence or report capability unavailable
None.
Read evidence from explicitly associated checks in the target's Quality context
Loading...
Response 200
Loading...
See the ACP quickstart and SDK flow