DocketX

DocketX / Contract review

Contract review Beta

DocketRouter reviews a contract clause by clause, and the model never writes the law. Every rule, trap and citation in a review is copied from a verified contract-law store at request time. A rule that has not been verified is not served: the review says no_verified_rule for that clause rather than guessing. Beta, for attorneys, live for any DocketRouter API key.

What is different

The law comes from the store, not the model

The model sorts, it does not state law

A language model does two jobs: it labels each section of the contract with a clause family (indemnity, venue selection, liquidated damages and so on), and it says whether a clause appears to do what a trap recorded in the store describes. It is never asked what the law is.

Every rule is copied, verbatim

For each clause, the rule, the trap, the authority and its verification record are copied out of the store for the jurisdiction you name. If the model's short explanation cites anything the store does not hold for that rule, the explanation is withheld and the response says so. The API's test suite fails if a response carries a citation the store does not hold.

No verified rule, no rule

A rule is served only when its status is verified and every one of its authorities passed a check. Rows that have been written but not yet verified are not served; the response names the clause family and the row's status, and nothing more. Nothing from a neighbouring state fills the gap.

Coverage, counted

602 verified rules in 28 states, and we say where it stops

Counted from the store with the reviewer's own serving check on 2026-10-08. The store is growing; the API computes this again on every request and returns it in the response.

Clause familyTXCANJALCTIAILKSMEMNMTNCNENYOHORRIUTVAWIDEFLWAIDNDAKLASD
Anti-assignment●●●●●●●●●●●●●●●●●●●●●●●●●●●●
Arbitration●●●●●●●●●●●●●●●●●●●●●●●●●●●●
Attorney fees●●●●●●●●●●●●●●●●●●●●●●●●●●●●
Choice of law●●●●●●●●●●●●●●●●●●●●●●●●●●●●
Consumer-protection waiver●●●●●●●●●●●●●●●●●●●●●●●·●●·●
Electronic signature●●●●●●●●●●●●●●●●●●●●●●●●●●●●
Entire agreement●●●●●●●●●●●●●●●●●●●●●●●●●●··
Force majeure·●●●●●●●●●●●●●●●●●●●···●·●●·
Indemnity●●●●●●●●●●●●●●●●●●●●●●●●●●●·
Lien waiver●●●●●●●●●●●●●●●●●●●●●●●·●●·●
Limitation of liability●●●●●●●●●●●●●●●●●●●●●●●·●·●●
Limitation of remedy●●●●●●●●●●●●●●●●●●●●●●●●●●·●
Limitations period●●●●●●●●●●●●●●●●●●●●●●●●●●●●
Liquidated damages●●●●●●●●●●●●●●●●●●●●●●●●●●●●
Non-competition●●●●●●●●●●●●●●●●●●●●●●●●●●●●
Personal injury release·······················●····
Prompt payment●●●●●●●●●●●●●●●●●●●●●●●●··●·
Statute of frauds●●●●●●●●●●●●●●●●●●●●●●●●●●●●
Trade secrets and confidentiality●●●●●●●●●●●●●●●●●●●●●●●●●··●
Unconscionability●●●●●●●●●●●●●●●●●●●●●●●●●●●·
Usury●●●●●●●●●●●●●●●●●●●●●●●●●●●●
Venue selection●●●●●●●●●●●●●●●●●●●●●●●●··●●
Warranty disclaimer●●●●●●●●●●●●●●●●●●●●●●●●●●●●
Verified rules26242322222222222222222222222222222222222121212020181717

6409 of the 6409 authorities behind those rules carry a verbatim quote located in a case-law or statute dataset we publish free on Hugging Face (docketx/us-caselaw-<state> and docketx/us-statutes), so anyone can re-run the check. No state covers every family: a clause family without a verified rule for the state you name comes back no_verified_rule, and the review says so.

The response

What a review returns

[ILLUSTRATIVE] A trimmed example of the response shape, not output from a real run. The field names are the API's. The rule, trap and authority for the indemnity clause are copied, shortened with …, from the real Texas store row tx-anti-indemnity-construction-contracts; the clause, the trap assessment and the counts are made up for the example.

{
  "object": "contract_review",
  "beta": true,
  "jurisdiction": "tx",
  "clauses": [
    {
      "id": "s14",
      "heading": "Indemnification.",
      "excerpt": "Subcontractor shall indemnify, defend and hold harmless Contractor …",
      "families": [
        {
          "family": "indemnity",
          "classified_by": "model",
          "result": "verified_rule",
          "rules": [
            {
              "rule_id": "tx-anti-indemnity-construction-contracts",
              "rule": "No, to that extent. Except as provided by § 151.103, a provision in a construction contract … is void … to the extent it requires an indemnitor to indemnify, hold harmless, OR DEFEND a party …",
              "trap": "Three things drafters miss. First, the section voids the DUTY TO DEFEND as well as the duty to indemnify …",
              "as_of": "2026-09-14",
              "authority": [
                {
                  "kind": "statute",
                  "cite": "Tex. Ins. Code § 151.102",
                  "decided": "2012-01-01",
                  "verified": {
                    "checked": "2026-09-14",
                    "corpus": {
                      "dataset": "docketx/us-statutes",
                      "row_id": "tx-stat_e37cb326c4934dcf",
                      "quote": "Except as provided by Section 151.103 , a provision in a construction contract …",
                      "checked": "2026-09-16"
                    }
                  }
                }
              ],
              "trap_assessment": {
                "result": "appears_to_trigger",
                "explanation": "The clause requires Subcontractor to \"defend\" Contractor against claims \"arising from Contractor's negligence\".",
                "assessed_by": "model"
              }
            }
          ]
        }
      ]
    },
    {
      "id": "s22",
      "heading": "Force Majeure.",
      "families": [
        {
          "family": "force-majeure",
          "classified_by": "keyword",
          "result": "no_verified_rule",
          "rules": [],
          "store_rows_without_verified_rule": [
            { "rule_id": "tx-force-majeure-no-general-statute", "status": "no-verified-authority" }
          ]
        }
      ]
    }
  ],
  "coverage": { "jurisdiction": "tx", "verified_rules": 26, "publicly_served": true },
  "disclosures": {
    "model_writes_law": false,
    "holds_contract_prose": false,
    "stores_submitted_contract": false,
    "can_answer_as_of_a_date": false
  }
}

A trap result is one of appears_to_trigger, does_not_appear_to_trigger, unclear, not_assessed or no_trap_recorded. The response also lists commonly included clause families that were not detected (as "not detected", never as "required"), a notice when the contract's governing-law language picks a different state from the one you asked about, and a summary. Full reference: contract review API docs.

What it cannot promise

Read this before you rely on it

Contract review is a research aid for licensed attorneys. It is not legal advice and not a substitute for an attorney reading the contract. The model that labels clauses can miss or mislabel one, and the same contract can be labelled differently on two runs; a clause it missed lands in the "not detected" list. A trap assessment says whether a clause appears to trip a recorded trap, which is not a legal conclusion about the clause. A clause marked no_verified_rule has not been checked against that state's law at all. Each rule carries an as_of date, and the store does not track amendments or decisions after it. We hold no contract language and do not suggest wording.

The submitted contract is not stored: the text is held in memory for the request, the usage record keeps token counts only, and the model call asks the provider for a no-retention route.

Beta

Start reviewing

Contract review is live in beta for every DocketRouter API key, and beta reviews are not invoiced. Get an API key, then follow the API docs. Reviewing contracts at volume, or need a state we have not verified yet? Tell us below.

Prefer email? info@docketx.ai. Developers: API docs · Pricing