CardPrepAI

★ Developers · CardPrepAI API

Embed grade prediction anywhere.

One REST API. Every category. Every grader. Built for LCS POS systems, Whatnot breakers, browser extensions, hobby aggregators, and the next great card app you're building.

★ Pay-per-call · monthly volume packages · 99.9% uptime · sub-3-second response · same model that powers cardprepai.com ★

Three volume tiers

Starter

Starter

$249/mo

  • 10,000 calls / month
  • ~$0.025 per call effective
  • All prediction endpoints
  • Email support · 24h SLA
  • Perfect for a single LCS POS
Start Starter →
Most popular

Growth

$1,499/mo

  • 100,000 calls / month
  • ~$0.015 per call effective
  • All endpoints + data licensing read access
  • Priority Slack support · 4h SLA
  • Multi-seat dashboard
  • White-label widget included
★ Start Growth →
Enterprise

Scale

$4,999/mo

  • 500,000 calls / month
  • ~$0.010 per call effective
  • Custom rate limits
  • Dedicated infrastructure
  • SLA-backed 99.95% uptime
  • Pop-trend data feed included
Email us →

Higher volume than 500K/mo? Custom enterprise contract →

Quickstart · three steps

★ Step 01 · Get your API key

Sign in, pick a tier, copy your key

API keys are shown ONCE on creation. Store them in your server-side environment. Never expose in client-side code.

# Your key looks like this:
cpai_live_a8d4e7f2c9b1...

★ Step 02 · Make a prediction call

POST a card to /api/v1/predict

curl https://cardprepai.com/api/v1/predict \
  -H "Authorization: Bearer cpai_live_..." \
  -H "Content-Type: application/json" \
  -d '{
    "genre": "sports",
    "sport": "basketball",
    "brand": "Panini Prizm",
    "year": "2017",
    "card_name": "Patrick Mahomes #269 Silver",
    "grading_service": "psa",
    "target_grade": "PSA 10",
    "front_image_url": "https://your-cdn.com/front.jpg",
    "back_image_url": "https://your-cdn.com/back.jpg"
  }'

★ Step 03 · Parse the response

Structured JSON with grade probabilities + EV

{
  "ok": true,
  "prediction": {
    "psa_10_prob": 0.41,
    "psa_9_prob": 0.38,
    "psa_8_prob": 0.18,
    "most_likely": "PSA 9",
    "confidence": 0.84,
    "recommended_grader": "PSA",
    "net_ev_usd": 1820,
    "verdict": "submit"
  }
}

Endpoints available

EndpointMethodPurposeCalls used
/api/v1/predictPOSTGrade prediction · PSA / BGS / SGC / CGC / TAG odds + EV1
/api/v1/tradePOSTTrade evaluator · singles, sealed, or mixed1
/api/v1/listingPOSTListing generator · 5 platform-optimal listings1
/api/v1/breakPOSTBreak EV · spot pricing vs hit math1
/api/v1/conciergePOSTSubmission form generation1
/api/v1/sentryPOSTPop Sentry scarcity check1
/api/v1/data/pop-trendsGETAggregated pop trend data (Growth+ only)0

Authentication: Authorization: Bearer cpai_live_xxx. All endpoints return JSON. Errors include a machine-readable error code.

API FAQ

What does a "call" count as?

One call = one successful prediction or analysis. Calls that error before reaching our model (auth failure, malformed request) don't count against your quota. The /data/pop-trends endpoint never counts against the call quota — it's a separate data product.

What's the typical response time?

Predict calls land in 2–5 seconds. Trade, Listing, Concierge usually under 2 seconds. Cold starts can add ~500ms.

Can I use this in a public client (browser, mobile app)?

No — API keys are server-side only. Build your client to call your server, and your server calls our API. Exposing your key in a public client is grounds for immediate revocation.

What if I exceed my monthly quota?

Calls return 429 monthly_quota_exceeded. Quota resets on the 1st of each month UTC. You can upgrade your plan mid-month — the new quota applies immediately and is prorated.

Can I get the underlying model weights or training data?

No. The model and its training corpus are proprietary. You're licensing the prediction service, not the model.

Questions? Email hello@cardprepai.com