Quick Start
Quick Start
This guide walks you through what's involved in integrating Spreedly into your application.
Integration Process
Prerequisites
Get an Account
Before you begin, you'll need a Dodgeball account. Contact support at [email protected] to get started.
Find Your API Keys
Once logged into the Dodgeball Dashboard, find your keys under API Configuration in the Developer Center.
Decide What Points of Risk to Protect
Identify where in the user journey fraud is most likely to occur, such as:
- Account Creation (fake accounts)
- Login (stolen credentials)
- Payment (chargeback abuse, stolen credit cards, etc.)
- Listing Creation (fake listings)
Understanding the User Journey
As a customer uses your application, Dodgeball builds a profile of their behavior from data gathered via SDKs and server-side code. For example, a user going through four checkpoints might provide:
SIGN_UP — customer.location, customer.firstName, customer.lastName, customer.primaryEmail, customer.primaryPhone
VERIFY — customer.isVerified, customer.location (2nd reading)
LOGIN — customer.location (3rd reading)
PAYMENT — customer.location (4th reading), transaction.amount, transaction.currency, billing.zip
By the time the user reaches the PAYMENT checkpoint, Dodgeball has a rich dataset to perform advanced analysis — for example, checking whether the user has ever been near the billing zip code to help identify potentially fraudulent activity.
Configure Client Side SDK (optional)
The Client SDK tracks user behavior and sends it to Dodgeball to build a behavioral profile. It also enables real-time responses to checkpoint verifications, allowing you to prompt users for MFA, IDV, and more.
Client code example:
This example is simplified. See the Client SDKs for full usage.
import { Dodgeball } from "@dodgeball/trust-sdk-client"
const dodgeball = new Dodgeball(dodgeballPublicApiKey)
// Start Tracking
dodgeball.track(currentSessionId, currentUserId);
// Call a Checkpoint
const endpointResponse = await fetch("https://my-server/dodgeball-checkpoint", fetchConfig);
const responseData = await endpointResponse.json();
dodgeball.handleVerification(responseData?.verification, {
... // Handle the verification...
});Information gathered automatically:
- Device Fingerprints
- Page Views
- Session Replay (if enabled)
- Integration Scripts (if enabled)
- MFA / IDV Interactions (if configured in checkpoints)
Configure Server Side SDK (required)
The Server SDK securely calls Checkpoints and handles responses. It is the primary interface for interacting with Dodgeball.
Server code example:
This example is simplified. See the Server SDKs for full usage.
import { Dodgeball } from "@dodgeball/trust-sdk-server";
const dodgeball = new Dodgeball(process.env.DODGEBALL_PRIVATE_API_KEY);
const checkpointPayload = {
checkpointName: "MY_CHECKPOINT_NAME",
event: {
ip: "some-ip-address",
data: {
// Add your data here
}
}
}
// Call a checkpoint
const checkpointResponse = await dodgeball.checkpoint(checkpointPayload);
// Handle Checkpoint Response...Information you can send:
- Customer Data (emails, phones, etc.)
- Transaction Data (amounts, items, etc.)
- Address Data (billing, shipping, etc.)
- Historical Data (account age, lifetime value, ratings, etc.)
- Custom Data (anything else relevant)
Create Checkpoints
Create empty checkpoints for each point of risk in the user journey. Reference them by name from your application code. Business teams can customize checkpoint policies in the Dodgeball Dashboard without touching code.
Run Checkpoints via SDKs
Call checkpoints from your application code, passing the required data. Dodgeball returns a verification that tells the application how to proceed. If any checkpoints require MFA, IDV, or other client-side interactions, you'll need the Client SDK integrated in your frontend.
Test That It's Working
- Trigger a checkpoint in your application, then check Developer Center > Checkpoint Logs to confirm the call was received.
- Make a change to your checkpoint, publish it, then call it again — you should see a new log entry with the updated version.
That's it! You've successfully integrated Dodgeball into your application.
Updated about 2 hours ago
