×

Login to Safe Shepherd

Recover your password

Safe Shepherd API Documentation

Create user

Creates a new user on Safe Shepherd. To be called when a user purchases service through the API.

POST /api/:integration_name/:api_key/v2/users(.:format)

Parameters

api_key
API access key - String*
api_secret
API secret key - String*
first_name
User's first name - String*
last_name
User's last name - String*
middle_name
User's middle name - String
birth_date
Integer of unix epoch representing user's birth date (UTC) - Integer*
aliases
Comma-separated list of strings representing any user aliases (requires full name) - List
emails
Comma-separated list of strings representing any user emails - List
phone_numbers
Comma-separated list of strings for users phone-numbers (e.g. 4158881212) - List
addresses
JSON/XML-encoded list of <address> objects (defined below) - Json*
async
If 'true' or '1', returns immediately with no records or links; scan will be initiated asynchronously. See `is_scanning` column and `Get user records` endpoint. - Boolean

Custom Types

Address
for Requests
"address" request object:
{ 'address1': String *, 'address2': String *, 'city': String, 'state': String, 'zip': String, 'country': String }

Returns

HTTP 401 - Unauthorized

If api_key missing or invalid, or user-secret failed authorization.

HTTP 400 - Bad Request

If fields missing or invalid

HTTP 200 - Success

Returns JSON/XML-encoded struct { user: <details for given user (see example)> }

View Example
{
  "user": {
    "id": 12,
    "secret": "TOP SECRET",
    "birth_date": null,
    "first_name": "Tommy",
    "middle_name": "Lee",
    "last_name": "Jones",
    "aliases": [
      {
        "id": 123,
        "first_name": "Tom",
        "last_name": "Yorke"
      }
    ],
    "emails": [
      {
        "id": 123,
        "address": "tom@example.com"
      }
    ],
    "phone_numbers": [
      {
        "id": 123,
        "number": "3128881212"
      },
      {
        "id": 124,
        "number": "2153331212"
      }
    ],
    "addresses": [
      {
        "id": 123,
        "address1": "123 N Jones Street",
        "address2": null,
        "city": "Pasadena",
        "state": "CA",
        "zip": "91101"
      }
    ],
    "records": [
      {
        "id": 318,
        "name": "Tommy Lee Jones",
        "site": "Intelius",
        "status": "discovered",
        "age": null,
        "href": null,
        "relations": [
          "Maria Jones",
          "Jesse Jones"
        ],
        "aliases": [
          "Thom"
        ],
        "locations": [
          "Glendale, CA",
          "Pasadena, CA",
          "North Hollywood, CA"
        ],
        "reference_id": "000560228488"
      }
    ],
    "links": [
      {
        "url": "http://github.com/hayesgm",
        "title": "Github | hayesgm",
        "contains": [
          "email",
          "address"
        ]
      }
    ],
    "service_history": [
      {
        "activated_service_on": "2012/05/27 00:46:39 +0000"
      },
      {
        "deactivated_service_on": "2012/05/30 00:46:39 +0000"
      },
      {
        "activated_service_on": "2012/06/01 00:46:39 +0000"
      }
    ],
    "is_scanning": false,
    "identification_on_file": true
  }
}

Notes

On success, store the "id" and "secret" as the user account. These will be used for later authentication. When async = true, an asynchronous scan will commence at this time for user's information. When async = false, a new scan will complete prior to the API call returning. Result will incude records and links discovered.