# Reaction Records - Scope Boundary Audit

> Reaction Records - Scope Boundary Audit is a paid API for AI agents from www.mahastrategies.com, paid per call via x402, $0.038316/call, status unknown (last checked 2026-10-20).

Validates that reaction record rows conform to declared owner, subject, revision, and allowed scope labels, flagging any scope label that grants no permission or access.

## Facts

- Endpoint: POST https://www.mahastrategies.com/api/v1/compute/reaction-records/scope-boundary-audit?utm_source=zero.xyz
- Price: $0.038316/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-20
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/reaction-records-scope-boundary-audit-b6cf3202
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_-4pG4Ho-i6ORFwRjEk2eW

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability reaction-records-scope-boundary-audit-b6cf3202 -d '<json body>'
```

Example prompt: Audit these 10 reaction record rows for scope boundary compliance — the owner is 'lab-org-42', subject is 'compound-XR7', revision is 'v2.1', data class is 'synthetic', and the allowed scopes are ['read','analyze']. Flag any rows where the scope labels don't match or grant unintended access.

## When to prefer this

Choose this endpoint when you need to enforce exact scope boundary constraints on scientific reaction records — specifically when you need to verify that declared owner, subject, revision, and scope labels are consistent and that no scope label grants unintended permission or access. It is best suited for pre-release compliance checks on synthetic or public reaction datasets of up to 32 rows. Prefer it over general-purpose validation tools when the domain is chemistry/reaction data governance and the concern is scope label integrity rather than field presence or data type correctness.

## Known failure modes

- Missing required fields (ownerRef, subjectRef, revision, allowedScopes) result in validation rejection
- rows array outside 1–32 item range causes schema rejection
- allowedScopes array outside 1–16 item range causes rejection
- dataClass value not in ['public','synthetic'] enum returns error
- nonpersonalMetadata not set to true (const) causes rejection
- Malformed row data may result in partial audit or error
- Network/payment failure returns 402 or connection error

## How this service works

Enforce exact declared owner, subject, revision and allowed scope labels; a matching label grants no permission or access for dataset/reaction/method/revision Supplied-record analysis, not independent certification. Full contract at the free describe URL.

## Output

Returns a per-row audit report indicating whether each reaction record conforms to the declared owner, subject, revision, and allowed scope labels. Flags any rows where scope labels are mismatched or would grant unintended permissions, providing a compliance summary without independent certification — analysis is based solely on the supplied records.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "rows": {
   "type": "array",
   "maxItems": 32,
   "minItems": 1
  },
  "ownerRef": {
   "type": "string"
  },
  "revision": {
   "type": "string"
  },
  "dataClass": {
   "enum": [
    "public",
    "synthetic"
   ],
   "type": "string"
  },
  "subjectRef": {
   "type": "string"
  },
  "allowedScopes": {
   "type": "array",
   "maxItems": 16,
   "minItems": 1
  },
  "nonpersonalMetadata": {
   "type": "boolean",
   "const": true
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/reaction-records-scope-boundary-audit-b6cf3202/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from www.mahastrategies.com](https://www.zero.xyz/host/www.mahastrategies.com/llms.txt)
