Juris · first-party API

API reference

Every search and coverage row includes source_url, as_of, method (fixture|live), and confidence. Coverage admits holes. Default search mode is fixture.

Auth

Send Authorization: Bearer juris_sk_test_… on paid routes. Public: GET /v1/coverage, billing start, docs.

$1 test-mode path

  1. POST /v1/billing/checkout with {"pack":"starter"}
  2. Pay with Stripe test card 4242 4242 4242 4242
  3. Follow redirect to GET /v1/billing/redeem?session_id=… (or webhook)
  4. Use the one-time api_key on POST /v1/ucc/search
curl -s https://jurisapi.com/v1/billing/checkout \
  -H 'content-type: application/json' \
  -d '{"pack":"starter"}'

Endpoints

MethodPathAuthNotes
GET/v1/coverageno50 states + DC; admits HARD holes NY/TX/CA
POST/v1/ucc/searchkey + 1 credit{"debtor_name","states?"}
GET/v1/accountkeyCredit balance
GET/v1/billing/packsnostarter $1 / pack5 $5
POST/v1/billing/checkoutnoStripe Checkout session
GET/v1/billing/stripe-pingnoStripe connectivity check (no Checkout)
GET/v1/billing/redeemnoIdempotent key issuance
POST/v1/webhooks/stripesigSame fulfillment

Search example

curl -s https://jurisapi.com/v1/ucc/search \
  -H "authorization: Bearer $JURIS_API_KEY" \
  -H 'content-type: application/json' \
  -d '{"debtor_name":"ACME INDUSTRIES LLC","states":["KY","RI","WI"]}'

MCP stdio

Registry: io.github.tthorstenson/juris. Install npx -y @tthorstenson/juris with JURIS_API_KEY (required) and optional JURIS_BASE_URL (default https://jurisapi.com). Local: npm run mcp.

ToS

KY / RI / WI HTML portals: GRAY. Live mode is opt-in, best-effort, and not a certified SOS search. Fixture-first is the supported MVP path.

openapi.json