Quickstart
Score your first transaction in under five minutes. Scorift is a Fraud Detection API-as-a-Service: you send transaction metadata over an authenticated HTTPS request, we evaluate it against your rules and Scorift's risk context, and you get an approve / flag / reject decision back in the same response, usually in under 50 milliseconds.
What you are doing in this guide
You will create a sandbox API key, send one POST /v1/score request from a curl command, and inspect the returned decision. No SDK, no server deployment, and no billing impact.
1. Create a sandbox API key
Sign in to the Scorift dashboard, open API Keys & Webhooks, and click Generate key. Choose the sandbox environment and copy the sk_test_… value — you will not see the full key again. The API key is how every request is authenticated, so scope it to the minimum privileges you need.
2. REST is the official integration method
Scorift is a plain HTTPS API — any HTTP client in any language works, which is why most teams are scoring events within minutes of getting a key. The REST contract is the supported, versioned interface and will stay that way; official client libraries are on the roadmap as a convenience layer over the same endpoints, so nothing you build today needs to change later.
3. Send your first score request
POST the transaction metadata you already have. Only event is required — every other field improves the accuracy of the hybrid rules + ML evaluation.
curl -X POST https://sandbox.scorift.com/v1/score \
-H "Authorization: Bearer $SCORIFT_KEY" \
-H "Content-Type: application/json" \
-d '{
"event": "payment.attempt",
"amount": 249.00,
"currency": "USD",
"user_id": "usr_18aQ2",
"ip": "203.0.113.42",
"device_id": "dvc_9f2c",
"email": "chris@example.com"
}'4. Interpret the response
Every response contains a numeric score (0–1), a categorical risk_level, and a binary action your app can branch on directly. The signals and rules arrays explain which ML features and which of your business rules contributed to the outcome.
{
"score": 0.24,
"risk_level": "low",
"action": "approve",
"signals": ["known_device", "consistent_geo"],
"rules": [],
"trace_id": "trc_01HBXSAMPLE",
"latency_ms": 38
}Route the response into your app: approve continues the flow, flag queues a case for a human reviewer, and reject stops the transaction. Persist the trace_id — it is the join key for webhooks, case review, and audit logs.
5. Next steps
- Author your first rule in the dashboard or via
POST /v1/rulesto layer deterministic logic on top of the ML score. - Register a signed webhook endpoint to receive async decisions and case events.
- When you are ready to go live, create a
sk_live_…key and store it in a server-side secrets manager. See the Authentication guide for the production setup checklist. - Promote your integration by swapping the key and base URL for production — no other code changes required.
