Quick Start

This short tutorial should help you integrate Waldo AI into your system.

Get your API keys

Your API requests are authenticated using API keys. Any request that doesn't include an API key will return an error.

You can generate an API key from your Dashboard at any time.

Authenticate

The authentication is made by making a POST request to `https://api.waldo.ai/authenticate` and passing your client API key and client API secret.

Authenticate your account

POST https://api.waldo.ai/authenticate

Request Body

Name
Type
Description

apiKey*

clientSecret*

String

{
  "code": "INVALID_API_KEY",
  "message": "Invalid API key"
}

Authentication requests should look like below. A successful request will receive a JWT token in response. Please note that the token has an expiry date of 1 hour from the authentication request. The following API requests will receive a fresh token in response, so it's advised to verify the expiry date before making an API request. Take a look at the authentication guide for how to implement the token refresh smoothly.

curl --location 'https://api.waldo.ai/authenticate' \
--data '{"apiKey": "YOUR_API_KEY","clientSecret": "CLIENT_SECRET"}'

Make your first request

To make your first request, send an authenticated request to the onboarding endpoint. This will perform an initial evaluation of a customer.

Onboard a customer

POST https://api.waldo.ai/onboard

Headers

Name
Type
Description

Authorization*

The token obtained in the authentication request in the format Bearer eyJhbG...

Content-Type*

Expected type application/json

Request Body

Name
Type
Description

firstName*

Customer's first name

lastName*

Customer's last name

officialId*

Object

Customer ID

dob*

String

Birthdate in format yyyy-MM-dd

address*

String

Customer's address

email*

String

Customer's e-mail address

zipCode*

String

Customer's postal code

state*

String

Customer's state abbreviated

phone*

String

Customer's phone number

entityId

String

Customer ID in your database

city*

String

Customer's city

{
    "event": "onboard",
    "evaluation": {
        "type": "kyc",
        "status": "initiated"
    },
    "validation": {
        "status": "REVIEW",
        "kyc": "PENDING",
        "fraudScore": 0,
        "fraudFlag": false
    },
    "externalId": "abcd-123-456-efgh",
    "customerId": "<customer-id>",
    "uri": "https://waldo.ai/customers/<customer-id>"
}

Take a look at how you might call this method:

curl --location 'https://api.waldo.ai/onboard' \
--header 'Authorization: Bearer eyJhbGc...' \
--header 'Content-Type: application/json' \
--data-raw '{
  "firstName": "Paul",
  "lastName": "Atreides",
  "officialId": {
    "docType": "SSN",
    "value": "123-45-6789",
    "country": "US"
  },
  "dob": "1959-03-14",
  "address": "123 Fremen City",
  "email": "paul.atreides@yahoo.com",
  "zipCode": "01234",
  "state": "NV",
  "phone": "+1 123-456-7890",
  "externalId": "abcd-123-456-efgh",
  "city": "Arrakis",
  "options": {"includeFraudCheck": true}
}'

Last updated