This guide will help you get started with the KarmaCheck API by walking you through a typical workflow for a background check. With this workflow, a background check on a candidate begins running after the candidate provides their personally identifiable information (PII) and authorizes the background check. By the end of this guide, you’ll know how to:Documentation Index
Fetch the complete documentation index at: https://developer.karmacheck.com/llms.txt
Use this file to discover all available pages before exploring further.
- Authenticate with KarmaCheck.
- Order a background check report by sending an onboarding invitation to a candidate.
- Get updates about the ordered background check (also known as a case).
- Generate a PDF report of the background check.
Before you begin
- Ensure that you have the following sandbox credentials to gain access to the KarmaCheck API:
- Email invites to candidates get sent to the KarmaCheck sandbox account instead of the email address that you enter for a candidate. If you want to run through the entire workflow in this guide, you’ll need the email invite to enter PII as a candidate. To receive these emails, contact KarmaCheck to set up email forwarding.
Step 1: Authenticate with KarmaCheck
Call the authentication endpoint to retrieve an authentication token. ReplaceAPI_KEY and CLIENT_ACCESS_TOKEN with your credentials:
token field.
Step 2: Order a report
With an authentication token, you can now make API calls to order a background check for a specific group.Step 2a: Get available packages
Call theGET /package/min/list endpoint to get a list of packages available for background checks:
id field. Find the package with the name Basic Test Package and note its ID. This package consists of services that support simulated results, enabling you to test the full workflow from start to finish. To learn more about screenings that support simulated results, see Simulated services.
Step 2b: Create a case
Call thePOST /case/create endpoint to order a background check on a candidate. Replace all placeholder values:
AUTHENTICATION_TOKEN: Your authentication tokenPACKAGE_ID: The ID of the package retrieved in the previous stepPOSTBACK_URL: The URL for receiving webhook event notifications when the status of the case changes. Remove thepostbackUrlfield if you don’t want to test webhooks.EMAIL: The candidate’s email addressGIVEN_NAME: The candidate’s first nameFAMILY_NAME: The candidate’s last name
The
postbackUrl property is for testing purposes only and supports only case status change events. To configure webhooks for your production environment, or to test all available webhook events, you must contact KarmaCheck to subscribe to webhook events.caseId field returned by the endpoint. You’ll need this value in subsequent API calls.
Step 3: Complete candidate onboarding
To begin processing the background check, you need to complete the following steps as a candidate:- Access the email invitation forwarded to you, and click Get Started Now to begin the KarmaCheck candidate onboarding process.
- Follow the prompts to provide candidate data and authorize the background check. Enter 111-22-3333 as the candidate’s Social Security number.
Step 4: (Optional) Receive status updates
If you provided a webhook URL to receive case status updates, a POST request is sent to the webhook endpoint any time the status of the case changes. The following is an example of a webhook payload:GET /case/id/{caseId} endpoint to retrieve the details of your case.
Step 5: Get report results
After the case is complete, call theGET /case/id/{caseId}/report/pdf/download/url endpoint to get a PDF of the report. Replace CASE_ID with the ID from Step 2b and AUTHENTICATION_TOKEN with your token: