POSTlive

Record one party-agent consent assertion and artifact hash

Records which role-bound partner credential made the assertion and the supplied artifact reference and hash. The credential role must match the submitted party. This endpoint does not verify an underlying principal signature, email delivery, or artifact availability. Each side is a separate idempotent call. 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/authorizations/consentsregisterPartyConsentV2

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
Idempotency-KeyheaderRequired{"type":"string","minLength":8,"maxLength":200}

Request body

Required request body.

application/json

{
  "$ref": "#/components/schemas/ConsentArtifactRegistration",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "party",
    "principalId",
    "counterpartyId",
    "transactionId",
    "scope",
    "rulesVersion",
    "termsVersion",
    "termsHash",
    "artifactRef",
    "artifactHash",
    "method",
    "acceptedAt"
  ],
  "properties": {
    "party": {
      "type": "string",
      "enum": [
        "claimant",
        "respondent"
      ]
    },
    "principalId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "counterpartyId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "transactionId": {
      "type": "string",
      "minLength": 1,
      "maxLength": 200
    },
    "scope": {
      "type": "string",
      "minLength": 1,
      "maxLength": 2000
    },
    "rulesVersion": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100,
      "example": "1.1",
      "x-current-rules-version": true
    },
    "termsVersion": {
      "type": "string",
      "minLength": 1,
      "maxLength": 100
    },
    "termsHash": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$"
    },
    "artifactRef": {
      "type": "string",
      "minLength": 1,
      "maxLength": 1000
    },
    "artifactHash": {
      "type": "string",
      "pattern": "^[a-f0-9]{64}$"
    },
    "method": {
      "type": "string",
      "enum": [
        "signed_doc",
        "email_attest",
        "api_acceptance"
      ]
    },
    "acceptedAt": {
      "type": "string",
      "format": "date-time",
      "example": "2026-08-18T00:00:00.000Z"
    },
    "expiresAt": {
      "type": "string",
      "format": "date-time",
      "example": "2026-12-01T00:00:00.000Z"
    },
    "filingDraftId": {
      "type": "string",
      "description": "Required for api_acceptance. termsHash must match the prepared packet. Existing registered authority must bind this credential to that principal."
    },
    "procedureTerms": {
      "$ref": "#/components/schemas/CaseProcedureTerms",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "schemaVersion",
        "track",
        "appealWaived",
        "waiverDisclosureVersion",
        "waiverDisclosureHash",
        "rulesVersion",
        "rulesHash",
        "behaviorVersion",
        "disclosureVersion",
        "disclosureHash",
        "feePolicyVersion",
        "termsHash"
      ],
      "properties": {
        "schemaVersion": {
          "type": "string",
          "const": "case-procedure-v1"
        },
        "track": {
          "type": "string",
          "enum": [
            "ai_fast",
            "ai_standard",
            "ai_assisted_human"
          ]
        },
        "appealWaived": {
          "type": "boolean"
        },
        "waiverDisclosureVersion": {
          "type": "string",
          "minLength": 1
        },
        "waiverDisclosureHash": {
          "type": "string",
          "pattern": "^[a-f0-9]{64}$"
        },
        "rulesVersion": {
          "type": "string",
          "minLength": 1
        },
        "rulesHash": {
          "type": "string",
          "pattern": "^[a-f0-9]{64}$"
        },
        "behaviorVersion": {
          "type": "string",
          "minLength": 1
        },
        "disclosureVersion": {
          "type": "string",
          "minLength": 1
        },
        "disclosureHash": {
          "type": "string",
          "pattern": "^[a-f0-9]{64}$"
        },
        "feePolicyVersion": {
          "type": "string",
          "minLength": 1
        },
        "termsHash": {
          "type": "string",
          "pattern": "^[a-f0-9]{64}$"
        }
      },
      "description": "Required for signed_doc and email_attest to identify the exact accepted current procedure and Rules hash. Only api_acceptance may omit this tuple, and only when the exact prepared packet accepts the current ai_standard track with appeal retained. Nondefault or waived packets require their explicit matching tuple."
    }
  },
  "allOf": [
    {
      "if": {
        "properties": {
          "method": {
            "const": "api_acceptance"
          }
        },
        "required": [
          "method"
        ]
      },
      "then": {
        "required": [
          "filingDraftId"
        ]
      }
    }
  ]
}

Responses

201

The authenticated party-agent consent assertion was recorded.

application/json

{
  "$ref": "#/components/schemas/ConsentArtifactRegistrationEnvelope",
  "type": "object",
  "additionalProperties": false,
  "required": [
    "data",
    "requestId"
  ],
  "properties": {
    "data": {
      "$ref": "#/components/schemas/ConsentArtifactRegistrationResult",
      "type": "object",
      "additionalProperties": false,
      "required": [
        "schemaVersion",
        "consentArtifactId",
        "party",
        "principalId",
        "counterpartyId",
        "transactionId",
        "scope",
        "rulesVersion",
        "termsVersion",
        "acceptedAt",
        "expiresAt",
        "registeredBy"
      ],
      "properties": {
        "schemaVersion": {
          "type": "string",
          "const": "partner-consent-artifact-v2"
        },
        "consentArtifactId": {
          "type": "string"
        },
        "party": {
          "type": "string",
          "enum": [
            "claimant",
            "respondent"
          ]
        },
        "principalId": {
          "type": "string"
        },
        "counterpartyId": {
          "type": "string"
        },
        "transactionId": {
          "type": "string"
        },
        "scope": {
          "type": "string"
        },
        "rulesVersion": {
          "type": "string"
        },
        "termsVersion": {
          "type": "string"
        },
        "acceptedAt": {
          "type": "string",
          "format": "date-time"
        },
        "expiresAt": {
          "type": [
            "string",
            "null"
          ],
          "format": "date-time"
        },
        "registeredBy": {
          "$ref": "#/components/schemas/AuthorizationRegistrationProvenance",
          "type": "object",
          "additionalProperties": false,
          "required": [
            "schemaVersion",
            "credentialPublicId",
            "role",
            "requestHash",
            "registeredAt"
          ],
          "properties": {
            "schemaVersion": {
              "type": "string",
              "const": "partner-authorization-registration-v2"
            },
            "credentialPublicId": {
              "type": "string"
            },
            "role": {
              "type": "string",
              "enum": [
                "claimant_agent",
                "respondent_agent"
              ]
            },
            "requestHash": {
              "type": "string",
              "pattern": "^[a-f0-9]{64}$"
            },
            "registeredAt": {
              "type": "string",
              "format": "date-time"
            }
          }
        },
        "termsDigest": {
          "type": "string",
          "pattern": "^[a-f0-9]{64}$"
        },
        "filingDraftId": {
          "type": "string"
        },
        "procedureTerms": {
          "$ref": "#/components/schemas/CaseProcedureTerms",
          "type": "object",
          "additionalProperties": false,
          "required": [
            "schemaVersion",
            "track",
            "appealWaived",
            "waiverDisclosureVersion",
            "waiverDisclosureHash",
            "rulesVersion",
            "rulesHash",
            "behaviorVersion",
            "disclosureVersion",
            "disclosureHash",
            "feePolicyVersion",
            "termsHash"
          ],
          "properties": {
            "schemaVersion": {
              "type": "string",
              "const": "case-procedure-v1"
            },
            "track": {
              "type": "string",
              "enum": [
                "ai_fast",
                "ai_standard",
                "ai_assisted_human"
              ]
            },
            "appealWaived": {
              "type": "boolean"
            },
            "waiverDisclosureVersion": {
              "type": "string",
              "minLength": 1
            },
            "waiverDisclosureHash": {
              "type": "string",
              "pattern": "^[a-f0-9]{64}$"
            },
            "rulesVersion": {
              "type": "string",
              "minLength": 1
            },
            "rulesHash": {
              "type": "string",
              "pattern": "^[a-f0-9]{64}$"
            },
            "behaviorVersion": {
              "type": "string",
              "minLength": 1
            },
            "disclosureVersion": {
              "type": "string",
              "minLength": 1
            },
            "disclosureHash": {
              "type": "string",
              "pattern": "^[a-f0-9]{64}$"
            },
            "feePolicyVersion": {
              "type": "string",
              "minLength": 1
            },
            "termsHash": {
              "type": "string",
              "pattern": "^[a-f0-9]{64}$"
            }
          }
        }
      }
    },
    "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": {
    "schemaVersion": "partner-consent-artifact-v2",
    "consentArtifactId": "consent_test_123",
    "party": "claimant",
    "principalId": "principal_test_123",
    "counterpartyId": "counterpartyId_test",
    "transactionId": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
    "scope": "scope_test",
    "rulesVersion": "rulesVersion_test",
    "termsVersion": "termsVersion_test",
    "acceptedAt": "2026-08-09T12:00:00.000Z",
    "expiresAt": null,
    "registeredBy": {
      "schemaVersion": "partner-authorization-registration-v2",
      "credentialPublicId": "credentialPublicId_test",
      "role": "claimant_agent",
      "requestHash": "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa",
      "registeredAt": "2026-08-09T12:00:00.000Z"
    }
  },
  "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.