Skip to content
developer · developer · research · sql · database · migration · query · static-analysis · change-review

SQL change review

Statically parse caller-supplied SQL without a database connection or execution, inventory statements and tables, and flag destructive DDL, unfiltered writes, and migration atomicity concerns.

$0.05 USDCBase + Solanax402 v2POST
Pay $0.05 USDC and run in your browserView free result sample

Endpoint

https://apiacre.com/v1/developer/sql-change-review

Send the JSON body below. An unpaid request returns HTTP 402 with a PAYMENT-REQUIRED header; an x402-compatible buyer signs the requirement and retries with PAYMENT-SIGNATURE.

Pay $0.05 USDC and run in your browser

Official Coinbase agent path

Coinbase Agentic Wallet can satisfy this x402 request in one command. Running it may pay automatically, so --max-amount is fixed to $0.05 USDC in atomic units. Copying the command does not install, authenticate, sign, or pay; review the request and use a separate low-value wallet before running it.

npx --yes awal@latest x402 pay https://apiacre.com/v1/developer/sql-change-review \
  -X POST \
  -d '{"sql":"CREATE INDEX idx_accounts_status ON accounts (status);","dialect":"postgres"}' \
  --max-amount 50000 \
  --json

Coinbase pay-for-service documentation · Buyer setup and wallet safety

Alternative third-party AgentCash commands

Run check first without payment. Its fetch command may automatically pay up to the exact listed price.

npx --yes agentcash@latest check https://apiacre.com/v1/developer/sql-change-review
npx --yes agentcash@latest fetch https://apiacre.com/v1/developer/sql-change-review \
  --method POST \
  --header 'content-type: application/json' \
  --body '{"sql":"CREATE INDEX idx_accounts_status ON accounts (status);","dialect":"postgres"}' \
  --payment-protocol x402 \
  --payment-network base \
  --max-amount 0.050

AgentCash CLI documentation

Input example

{
  "sql": "CREATE INDEX idx_accounts_status ON accounts (status);",
  "dialect": "postgres"
}

Response shape

View free static sample JSON

{
  "request_id": "018f1f54-7f38-7ba2-8dc3-5f90272d9f1a",
  "service": "developer.sql-change-review",
  "version": "1",
  "data": {
    "documentSha256": "3e31b98c852573137d17dcb062b2a1571d63052f71abeeb8b62296f3d1066af4",
    "dialect": "postgres",
    "valid": true,
    "reviewDecision": "clear",
    "attentionScore": 0,
    "attentionLevel": "clear",
    "statementCount": 1,
    "summary": {
      "readStatements": 0,
      "dataChangeStatements": 0,
      "schemaChangeStatements": 1,
      "transactionStatements": 0,
      "otherStatements": 0,
      "unfilteredDataChanges": 0,
      "destructiveChanges": 0,
      "referencedTables": [
        "accounts"
      ],
      "targetObjects": [
        "accounts"
      ]
    },
    "statements": [
      {
        "index": 1,
        "operation": "CREATE",
        "category": "schema-change",
        "readOnly": false,
        "targetObjects": [
          "accounts"
        ],
        "referencedTables": [
          "accounts"
        ],
        "sourceTables": [],
        "hasWhere": false,
        "hasLimit": false,
        "parameterCount": 0,
        "normalizedPreview": "CREATE INDEX idx_accounts_status ON accounts(status)",
        "statementSha256": "532fa1e226f9b47b8a611b319ac0ec776fd283523d5162d4b039e57726d5588a"
      }
    ],
    "findings": [],
    "parser": {
      "name": "SQLGlot",
      "version": "30.16.0",
      "license": "MIT"
    },
    "execution": {
      "databaseConnected": false,
      "sqlExecuted": false
    },
    "limitations": [
      "Static syntax review only; database schema, permissions, triggers, data volume, query plans, and runtime behavior are not inspected.",
      "A low attention score does not prove a change is correct or safe to deploy."
    ]
  },
  "meta": {
    "duration_ms": 42,
    "cached": false,
    "sources": [],
    "warnings": [],
    "next_actions": []
  }
}

Try the payment challenge

curl -i -X POST 'https://apiacre.com/v1/developer/sql-change-review' \
  -H 'content-type: application/json' \
  --data '{"sql":"CREATE INDEX idx_accounts_status ON accounts (status);","dialect":"postgres"}'