Preflightv1Product Rules
List rule change history
Returns blame/audit rows for one rule (newest first). Requires **products** RBAC read and an **Administrator** role for the actor.
Authorization
BearerAuth AuthorizationBearer <token>
HTTP bearer JWT from the Corebanq auth service.
Authorization is enforced with RBAC (record-level permissions), not ad-hoc OAuth-style scopes in this spec. See each tag description and operation summaries for which record grants apply.
In: header
Path Parameters
id*string
Response Body
application/json
application/json
application/json
application/json
application/json
application/json
application/json
application/json
curl -X GET "https://example.com/v1/products/rules/8f2a1c3d-4e5b-6f7a-8b9c-0d1e2f3a4b5c/history"[
{
"id": "8f2a1c3d-4e5b-6f7a-8b9c-0d1e2f3a4b5c",
"action": "update",
"user_id": "8f2a1c3d-4e5b-6f7a-8b9c-0d1e2f3a4b5c",
"user_name": "string",
"created_at": "2019-08-24T14:15:22Z",
"changes": [
{
"field": "string",
"old": null,
"new": null
}
]
}
]{
"status": 400,
"code": "validation_error",
"message": "At least one of product_ids, source_account_id, destination_account_id, or destination_counterparty_id is required.",
"details": [
{
"field": "amount",
"rule": "gt",
"param": "0",
"message": "amount must be greater than 0"
}
],
"class": "validation",
"retryable": false
}{
"status": 400,
"code": "validation_error",
"message": "At least one of product_ids, source_account_id, destination_account_id, or destination_counterparty_id is required.",
"details": [
{
"field": "amount",
"rule": "gt",
"param": "0",
"message": "amount must be greater than 0"
}
],
"class": "validation",
"retryable": false
}{
"status": 400,
"code": "validation_error",
"message": "At least one of product_ids, source_account_id, destination_account_id, or destination_counterparty_id is required.",
"details": [
{
"field": "amount",
"rule": "gt",
"param": "0",
"message": "amount must be greater than 0"
}
],
"class": "validation",
"retryable": false
}{
"status": 400,
"code": "validation_error",
"message": "At least one of product_ids, source_account_id, destination_account_id, or destination_counterparty_id is required.",
"details": [
{
"field": "amount",
"rule": "gt",
"param": "0",
"message": "amount must be greater than 0"
}
],
"class": "validation",
"retryable": false
}{
"status": 429,
"message": "Rate limit exceeded",
"code": "rate_limits_m.exceeded",
"class": "temporary",
"retryable": true
}{
"status": 500,
"message": "Database error",
"code": "common.database_error",
"class": "business"
}{
"status": 503,
"message": "Internal server error",
"code": "auth_m.internal_server_error",
"class": "temporary",
"retryable": true
}