Get an Assurance Policy with versions and recent runs

GET/v1/assurance/policies/{policyId}

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
policyIdpathstringYesAssurance Policy ID
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.

200Assurance Policy detailapplication/json
FieldTypeRequiredDescription
assurancePolicyobjectYes
assurancePolicy.idstringYesUnique identifier.
assurancePolicy.projectIdstringYesProject ID.
assurancePolicy.namestringYesHuman-readable name.
assurancePolicy.descriptionstringYesHuman-readable description.
assurancePolicy.statusdraft | active | archivedYesCurrent lifecycle status.
assurancePolicy.definitionobjectYesAt least one test, evaluation, or optimization gate is required. Gate IDs are unique across all gate kinds.
assurancePolicy.definition.schemaVersioncomputer_agents_assurance_policy_v2No
assurancePolicy.definition.testGatesobject[]No
assurancePolicy.definition.testGates[].idstringNoUnique identifier.
assurancePolicy.definition.testGates[].testPlanIdstringYes
assurancePolicy.definition.testGates[].versionIdstringNo
assurancePolicy.definition.testGates[].requireCommitShabooleanNo
assurancePolicy.definition.testGates[].requireTrustedEvidencebooleanNoRequire control-plane verified execution-worker provenance. Disable only for an explicitly approved legacy/non-release migration policy.
assurancePolicy.definition.testGates[].maxAgeHoursnumberNo
assurancePolicy.definition.evaluationGatesobject[]No
assurancePolicy.definition.evaluationGates[].idstringNoUnique identifier.
assurancePolicy.definition.evaluationGates[].evaluationIdstringYes
assurancePolicy.definition.evaluationGates[].versionIdstringNo
assurancePolicy.definition.evaluationGates[].minimumAverageScorenumberNo
assurancePolicy.definition.evaluationGates[].minimumPassRatenumberNo
assurancePolicy.definition.evaluationGates[].requireRunFingerprintbooleanNo
assurancePolicy.definition.evaluationGates[].requireTrustedEvidencebooleanNoRequire control-plane verified execution-worker provenance for the exact Evaluation result set and immutable bindings.
assurancePolicy.definition.evaluationGates[].requireSignedEvidencebooleanNoRequire the canonical Evaluation evidence fingerprint to carry a cryptographically verified Google Cloud KMS signature.
assurancePolicy.definition.evaluationGates[].maxAgeHoursnumberNo
assurancePolicy.definition.optimizationGatesobject[]No
assurancePolicy.definition.optimizationGates[].idstringNoUnique identifier.
assurancePolicy.definition.optimizationGates[].agentIdstringYesAgent ID.
assurancePolicy.definition.optimizationGates[].requireTargetMetbooleanNo
assurancePolicy.definition.optimizationGates[].requirePublishedCandidatebooleanNo
assurancePolicy.definition.optimizationGates[].maxAgeHoursnumberNo
assurancePolicy.definition.approvalobjectNo
assurancePolicy.definition.approval.modenone | manualNo
assurancePolicy.definition.budgetobjectNo
assurancePolicy.definition.budget.maximumTotalCostUsdnumberNo
assurancePolicy.policyFingerprintstringYes
assurancePolicy.publishedVersionIdstringYes
assurancePolicy.metadataobjectYesFree-form metadata object.
assurancePolicy.createdAtstringYesISO 8601 timestamp.
assurancePolicy.updatedAtstringYesISO 8601 timestamp.
assurancePolicy.versionsobject[]No
assurancePolicy.versions[].idstringYesUnique identifier.
assurancePolicy.versions[].assurancePolicyIdstringYes
assurancePolicy.versions[].versionintegerYes
assurancePolicy.versions[].labelstringYes
assurancePolicy.versions[].descriptionstringYesHuman-readable description.
assurancePolicy.versions[].statussaved | published | archivedYesCurrent lifecycle status.
assurancePolicy.versions[].snapshotobjectYes
assurancePolicy.versions[].snapshot.namestringYesHuman-readable name.
assurancePolicy.versions[].snapshot.descriptionstringYesHuman-readable description.
assurancePolicy.versions[].snapshot.statusdraft | active | archivedYesCurrent lifecycle status.
assurancePolicy.versions[].snapshot.projectIdstringYesProject ID.
assurancePolicy.versions[].snapshot.definitionobjectYesAt least one test, evaluation, or optimization gate is required. Gate IDs are unique across all gate kinds.
assurancePolicy.versions[].snapshot.definition.schemaVersioncomputer_agents_assurance_policy_v2No
assurancePolicy.versions[].snapshot.definition.testGatesobject[]No
assurancePolicy.versions[].snapshot.definition.testGates[].idstringNoUnique identifier.
assurancePolicy.versions[].snapshot.definition.testGates[].testPlanIdstringYes
assurancePolicy.versions[].snapshot.definition.testGates[].versionIdstringNo
assurancePolicy.versions[].snapshot.definition.testGates[].requireCommitShabooleanNo
assurancePolicy.versions[].snapshot.definition.testGates[].requireTrustedEvidencebooleanNoRequire control-plane verified execution-worker provenance. Disable only for an explicitly approved legacy/non-release migration policy.
assurancePolicy.versions[].snapshot.definition.testGates[].maxAgeHoursnumberNo
assurancePolicy.versions[].snapshot.definition.evaluationGatesobject[]No
assurancePolicy.versions[].snapshot.definition.evaluationGates[].idstringNoUnique identifier.
assurancePolicy.versions[].snapshot.definition.evaluationGates[].evaluationIdstringYes
assurancePolicy.versions[].snapshot.definition.evaluationGates[].versionIdstringNo
assurancePolicy.versions[].snapshot.definition.evaluationGates[].minimumAverageScorenumberNo
assurancePolicy.versions[].snapshot.definition.evaluationGates[].minimumPassRatenumberNo
assurancePolicy.versions[].snapshot.definition.evaluationGates[].requireRunFingerprintbooleanNo
assurancePolicy.versions[].snapshot.definition.evaluationGates[].requireTrustedEvidencebooleanNoRequire control-plane verified execution-worker provenance for the exact Evaluation result set and immutable bindings.
assurancePolicy.versions[].snapshot.definition.evaluationGates[].requireSignedEvidencebooleanNoRequire the canonical Evaluation evidence fingerprint to carry a cryptographically verified Google Cloud KMS signature.
assurancePolicy.versions[].snapshot.definition.evaluationGates[].maxAgeHoursnumberNo
assurancePolicy.versions[].snapshot.definition.optimizationGatesobject[]No
assurancePolicy.versions[].snapshot.definition.optimizationGates[].idstringNoUnique identifier.
assurancePolicy.versions[].snapshot.definition.optimizationGates[].agentIdstringYesAgent ID.
assurancePolicy.versions[].snapshot.definition.optimizationGates[].requireTargetMetbooleanNo
assurancePolicy.versions[].snapshot.definition.optimizationGates[].requirePublishedCandidatebooleanNo
assurancePolicy.versions[].snapshot.definition.optimizationGates[].maxAgeHoursnumberNo
assurancePolicy.versions[].snapshot.definition.approvalobjectNo
assurancePolicy.versions[].snapshot.definition.approval.modenone | manualNo
assurancePolicy.versions[].snapshot.definition.budgetobjectNo
assurancePolicy.versions[].snapshot.definition.budget.maximumTotalCostUsdnumberNo
assurancePolicy.versions[].snapshot.metadataobjectYesFree-form metadata object.
assurancePolicy.versions[].policyFingerprintstringYes
assurancePolicy.versions[].metadataobjectYesFree-form metadata object.
assurancePolicy.versions[].publishedAtstringYes
assurancePolicy.versions[].createdAtstringYesISO 8601 timestamp.
assurancePolicy.versions[].updatedAtstringYesISO 8601 timestamp.
assurancePolicy.runsobject[]No
assurancePolicy.runs[].idstringYesUnique identifier.
assurancePolicy.runs[].assurancePolicyIdstringYes
assurancePolicy.runs[].policyVersionIdstringYes
assurancePolicy.runs[].projectIdstringYesProject ID.
assurancePolicy.runs[].releaseIdstringYes
assurancePolicy.runs[].commitShastringYes
assurancePolicy.runs[].agentIdstringYesAgent ID.
assurancePolicy.runs[].agentVersionIdstringYes
assurancePolicy.runs[].statusrunning | passed | failed | blocked | cancelledYesCurrent lifecycle status.
assurancePolicy.runs[].evidenceReferencesobjectYes
assurancePolicy.runs[].evidenceReferences.testRunIdsstring[]No
assurancePolicy.runs[].evidenceReferences.evaluationRunIdsstring[]No
assurancePolicy.runs[].evidenceReferences.optimizationJobIdsstring[]No
assurancePolicy.runs[].evidenceobjectYes
assurancePolicy.runs[].evidence.schemaVersioncomputer_agents_assurance_evidence_v1Yes
assurancePolicy.runs[].evidence.runIdstringYes
assurancePolicy.runs[].evidence.policyIdstringYes
assurancePolicy.runs[].evidence.policyVersionIdstringYes
assurancePolicy.runs[].evidence.policyFingerprintstringYes
assurancePolicy.runs[].evidence.subjectobjectYes
assurancePolicy.runs[].evidence.subject.projectIdstringYesProject ID.
assurancePolicy.runs[].evidence.subject.releaseIdstringYes
assurancePolicy.runs[].evidence.subject.commitShastringYes
assurancePolicy.runs[].evidence.subject.agentIdstringYesAgent ID.
assurancePolicy.runs[].evidence.subject.agentVersionIdstringYes
assurancePolicy.runs[].evidence.evaluatedAtstringYes
assurancePolicy.runs[].evidence.gatesobject[]Yes
assurancePolicy.runs[].evidence.gates[].idstringYesUnique identifier.
assurancePolicy.runs[].evidence.gates[].kindtest | evaluation | optimization | budgetYes
assurancePolicy.runs[].evidence.gates[].statuspassed | failed | pendingYesCurrent lifecycle status.
assurancePolicy.runs[].evidence.gates[].reasonstringYes
assurancePolicy.runs[].evidence.gates[].evidenceIdstringYes
assurancePolicy.runs[].evidence.gates[].evidenceFingerprintstringYes
assurancePolicy.runs[].evidence.gates[].actualobjectYes
assurancePolicy.runs[].evidence.gates[].requiredobjectYes
assurancePolicy.runs[].evidence.evidenceReferencesobjectYes
assurancePolicy.runs[].evidence.evidenceReferences.testRunIdsstring[]No
assurancePolicy.runs[].evidence.evidenceReferences.evaluationRunIdsstring[]No
assurancePolicy.runs[].evidence.evidenceReferences.optimizationJobIdsstring[]No
assurancePolicy.runs[].evidence.costobjectYes
assurancePolicy.runs[].evidence.cost.totalCostUsdnumberYes
assurancePolicy.runs[].evidence.cost.completebooleanYes
assurancePolicy.runs[].evidence.fingerprintstringYes
assurancePolicy.runs[].decisionobjectYes
assurancePolicy.runs[].decision.schemaVersioncomputer_agents_assurance_decision_v1Yes
assurancePolicy.runs[].decision.runIdstringYes
assurancePolicy.runs[].decision.outcomepassed | failed | pending_evidence | awaiting_approvalYes
assurancePolicy.runs[].decision.technicalOutcomepassed | failed | pendingYes
assurancePolicy.runs[].decision.policyFingerprintstringYes
assurancePolicy.runs[].decision.evidenceFingerprintstringYes
assurancePolicy.runs[].decision.approvalobjectYes
assurancePolicy.runs[].decision.approval.statusnot_required | pending | approvedYesCurrent lifecycle status.
assurancePolicy.runs[].decision.approval.actorIdstringYes
assurancePolicy.runs[].decision.approval.actorTypeuser | policyYes
assurancePolicy.runs[].decision.approval.approvedAtstringYes
assurancePolicy.runs[].decision.approval.evidenceFingerprintstringYes
assurancePolicy.runs[].decision.decidedAtstringYes
assurancePolicy.runs[].decision.fingerprintstringYes
assurancePolicy.runs[].approvalobjectYes
assurancePolicy.runs[].approval.approvedByUserIdstringYes
assurancePolicy.runs[].approval.approvedAtstringYes
assurancePolicy.runs[].approval.evidenceFingerprintstringYes
assurancePolicy.runs[].revisionintegerYes
assurancePolicy.runs[].metadataobjectYesFree-form metadata object.
assurancePolicy.runs[].createdAtstringYesISO 8601 timestamp.
assurancePolicy.runs[].updatedAtstringYesISO 8601 timestamp.
assurancePolicy.runs[].completedAtstringYesISO 8601 timestamp.
assurancePolicy.runs[].eventsobject[]No
404Assurance Policy not found
None.
Get an Assurance Policy with versions and recent runs
Loading...
Response 200
Loading...
See the ACP quickstart and SDK flow