POSTlive

Independently confirm a pending termination request

Confirmation must come from the side that did not initiate the request, using a role-bound termination capability and an active case membership that expressly permits case termination. Compatibility alias. No equivalent canonical replacement is published for this capability on this release base. Its compatibility window has not started; keep using this route.

/api/v2/cases/{caseId}/termination-requests/{requestId}/confirmationsconfirmTerminationRequestV2

Authentication and authority

Send one of the allowed bearer credential roles. Alternatives are OR; credentials named within one alternative are AND.

claimantAgentBearer

Credential bound to the claimant_agent role. Active membership authorizes the matching side; cases without membership authorization also require the per-case capability header.

respondentAgentBearer

Credential bound to the respondent_agent role. Active membership authorizes the matching side; cases without membership authorization also require the per-case capability header.

Parameters

NameLocationRequirementSchema
caseIdpathRequired{"type":"string"}
requestIdpathRequired{"type":"string"}
Idempotency-KeyheaderRequired{"type":"string","minLength":8,"maxLength":200}

Request body

Required request body.

application/json

{
  "type": "object",
  "additionalProperties": false,
  "required": [
    "expectedRevision"
  ],
  "properties": {
    "expectedRevision": {
      "type": "integer",
      "minimum": 0
    },
    "adoption": {
      "$ref": "#/components/schemas/RulesAdoptionAssent",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "version",
        "hash",
        "statementVersion"
      ],
      "properties": {
        "version": {
          "type": "string"
        },
        "hash": {
          "type": "string",
          "pattern": "^[a-f0-9]{64}$"
        },
        "statementVersion": {
          "type": "string",
          "const": "rule_1_3_adoption_v1"
        }
      }
    },
    "externalProtocolReference": {
      "type": "string",
      "pattern": "^[A-Za-z0-9._:-]{1,200}$"
    }
  }
}

Responses

200

Counterparty confirmation committed

application/json

{
  "$ref": "#/components/schemas/PreAwardTerminationResponse",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "data",
    "requestId"
  ],
  "properties": {
    "data": {
      "type": "object",
      "additionalProperties": false,
      "required": [
        "caseId",
        "caseStatus",
        "revision",
        "termination"
      ],
      "properties": {
        "caseId": {
          "type": "string"
        },
        "caseStatus": {
          "type": "string"
        },
        "revision": {
          "type": "integer",
          "minimum": 0
        },
        "termination": {
          "$ref": "#/components/schemas/PreAwardTermination",
          "type": "object",
          "additionalProperties": false,
          "required": [
            "schemaVersion",
            "id",
            "kind",
            "status",
            "initiatedBySide",
            "initiatedAt",
            "confirmations",
            "fundsEffect"
          ],
          "properties": {
            "schemaVersion": {
              "type": "string",
              "const": "pre-award-termination-v1"
            },
            "id": {
              "type": "string"
            },
            "kind": {
              "type": "string",
              "enum": [
                "claimant_withdrawal",
                "party_agreement"
              ]
            },
            "status": {
              "type": "string",
              "enum": [
                "pending",
                "completed",
                "cancelled",
                "superseded"
              ]
            },
            "initiatedBySide": {
              "type": "string",
              "enum": [
                "claimant",
                "respondent"
              ]
            },
            "initiatedAt": {
              "type": "string",
              "format": "date-time"
            },
            "confirmations": {
              "type": "array",
              "maxItems": 2,
              "items": {
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "side",
                  "confirmedAt"
                ],
                "properties": {
                  "side": {
                    "type": "string",
                    "enum": [
                      "claimant",
                      "respondent"
                    ]
                  },
                  "confirmedAt": {
                    "type": "string",
                    "format": "date-time"
                  }
                }
              }
            },
            "completedAt": {
              "type": "string",
              "format": "date-time"
            },
            "cancelledAt": {
              "type": "string",
              "format": "date-time"
            },
            "fundsEffect": {
              "type": "string",
              "const": "none"
            },
            "adoptsRulesVersion": {
              "type": "string"
            },
            "adoptsRulesHash": {
              "type": "string",
              "pattern": "^[a-f0-9]{64}$"
            }
          }
        },
        "deadlinesContinue": {
          "type": "boolean"
        }
      }
    },
    "requestId": {
      "type": "string"
    }
  }
}
default

RFC 9457 style problem response.

application/problem+json

{
  "$ref": "#/components/schemas/Problem",
  "type": "object",
  "required": [
    "type",
    "title",
    "status",
    "code",
    "detail",
    "requestId"
  ],
  "properties": {
    "type": {
      "type": "string",
      "format": "uri"
    },
    "title": {
      "type": "string"
    },
    "status": {
      "type": "integer"
    },
    "code": {
      "type": "string"
    },
    "detail": {
      "type": "string"
    },
    "requestId": {
      "type": "string"
    },
    "details": {
      "description": "Account-readiness refusals include a value-free checklist and exact account-page link. Other error codes may provide different details.",
      "anyOf": [
        {
          "$ref": "#/components/schemas/AccountReadinessDetails",
          "type": "object",
          "additionalProperties": false,
          "required": [
            "ready",
            "accountSetupUrl",
            "missing"
          ],
          "properties": {
            "ready": {
              "type": "boolean"
            },
            "accountSetupUrl": {
              "type": "string",
              "format": "uri"
            },
            "missing": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/AccountReadinessRequirement",
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "code",
                  "label",
                  "section",
                  "accountUrl"
                ],
                "properties": {
                  "code": {
                    "type": "string"
                  },
                  "label": {
                    "type": "string"
                  },
                  "section": {
                    "type": "string",
                    "enum": [
                      "email",
                      "identity",
                      "legal_documents"
                    ]
                  },
                  "accountUrl": {
                    "type": "string",
                    "format": "uri"
                  }
                }
              }
            }
          }
        },
        {
          "$ref": "#/components/schemas/LegalDocumentsRequiredDetails",
          "type": "object",
          "additionalProperties": false,
          "required": [
            "legalDocumentsUrl"
          ],
          "properties": {
            "legalDocumentsUrl": {
              "type": "string",
              "format": "uri",
              "description": "Absolute account-page URL where the person reviews and accepts the current Terms and Privacy Notice. Uses the configured public application origin. After accepting the documents, retry the original operation."
            },
            "ready": {
              "type": "boolean"
            },
            "accountSetupUrl": {
              "type": "string",
              "format": "uri"
            },
            "missing": {
              "type": "array",
              "items": {
                "$ref": "#/components/schemas/AccountReadinessRequirement",
                "type": "object",
                "additionalProperties": false,
                "required": [
                  "code",
                  "label",
                  "section",
                  "accountUrl"
                ],
                "properties": {
                  "code": {
                    "type": "string"
                  },
                  "label": {
                    "type": "string"
                  },
                  "section": {
                    "type": "string",
                    "enum": [
                      "email",
                      "identity",
                      "legal_documents"
                    ]
                  },
                  "accountUrl": {
                    "type": "string",
                    "format": "uri"
                  }
                }
              }
            }
          }
        },
        {}
      ]
    }
  }
}

Example response

Successful response

{
  "data": {
    "caseId": "pcase_test_123",
    "caseStatus": "caseStatus_test",
    "revision": 1,
    "termination": {
      "schemaVersion": "pre-award-termination-v1",
      "id": "id_test",
      "kind": "claimant_withdrawal",
      "status": "pending",
      "initiatedBySide": "claimant",
      "initiatedAt": "2026-08-09T12:00:00.000Z",
      "confirmations": [
        {
          "side": "claimant",
          "confirmedAt": "2026-08-09T12:00:00.000Z"
        }
      ],
      "fundsEffect": "none"
    }
  },
  "requestId": "requestId_test"
}

Errors

Read the response status and stable error code. See errors and rate limits for recovery. Refresh the resource before resolving a state or digest conflict.

Idempotency and retries

  • For throttling, honor Retry-After when present. Back off on retryable server failures.
  • Send a unique Idempotency-Key. An exact retry returns the stored result; reusing the key with a different request fails.
  • The request is accepted only when its credential, authority, case state, and resource preconditions are satisfied.