Preflightv1Product Rules
Delete rule
Hard-delete. Prefer PATCH with { active: false } for reversible deactivation.
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
curl -X DELETE "https://example.com/v1/products/rules/8f2a1c3d-4e5b-6f7a-8b9c-0d1e2f3a4b5c"Empty
{
"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
}