Direct Mail Leads

The Direct Mail enpoints allow you as a Publisher to post Direct Mail leads directly to Bright Horizons Media. Leads sent to the API use the POST method and require both credentials and your Publisher to be enabled for posting Direct Mail leads. Leads are posted in JSON format.

Method Endpoint Endpoint Type
Post https://api.brighthorizonsmedia.com/post/direct-mail/ JSON

POST PARAMETERS

To successfully post Direct Mail leads, two arrays need to be passed to the JSON endpoint: the xauth[] array and the transaction[] array.

The xauth[] array contains your Publisher ID and the API key assigned by your Account Manager.

The transaction[] contains all the details about the lead (first name, last name, email, consumer IP, etc.).

xauth[] Parameters

Field Type Required? Description
affiliateid INT Yes Your Publisher Id (aka Affiliate Id) provided by your Account Manager
key STRING (36) Yes The API Key provided by your Account Manager.

transaction[] Parameters

Field Type Required Description
email STRING Yes Email address as provided by the consumer
ip STRING Yes The IP address of the consumer when the form was submitted on your website (not your server IP address). Can be either IPV4 or IPv6.
firstname STRING Yes First name as provided by the consumer
lastname STRING Yes Last name as provided by the consumer
dob STRING Yes Date of Birth as provided by the consumer. Must be in the format YYYY-MM-DD.
phone STRING Yes Phone number as provided by the consumer. Can be passed in any format (see following examples) but must be a valid phone number with 10 digits. Examples: 3105551212, (310) 555-1212, 310-555-1212, 310.555.1212.
address STRING Yes Street address as provided by the consumer
address2 STRING Optional Street address as provided by the consumer
city STRING Yes City as provided by the consumer. If not provided, we will map the city based on the zip code provided.
state CHAR (2) Yes The state abbreviation as provided by the consumer. If not provided, we will map the state based on the zip code provided.
zip STRING Yes The zip code as provided by the consumer. For US zip codes, make sure to include any leading zeros to ensure the zip code has a length of 5 characters.
havecheckingaccount BOOLEAN Optional Boolean value (true/false or 1/0). Whether the consumer indicated they have a checking account.
source STRING Yes The fully qualified URL of the webpage where the lead was generated (excluding any query string parameters)
sub1 STRING Optional Additional field for tracking purposes
sub2 STRING Optional Additional field for tracking purposes
sub3 STRING Optional Additional field for tracking purposes
sub4 STRING Optional Additional field for tracking purposes
sub5 STRING Optional Additional field for tracking purposes

REQUESTS & RESPONSES

SAMPLE REQUEST


POST /post/direct-mail/ HTTP/1.1
Host: https://api.brighthorizonsmedia.com
Content-Type: application/json; charset=utf-8
Content-Length: 596

{
  "xauth": {
    "affiliateid": 123456, 
    "key": "96852585-58lk-5g5r-63jk8-25lp2574poiu"
  },
  "transaction": {
    "email": "jjmcclure@example.com",
    "ip": "184.248.249.118",
    "firstname": "JJ",
    "lastname": "McClure",
    "dob": "1936-02-11",
    "phone": "7025551212",
    "address": "123 Cannonball Lane",
    "city": "Boulder City",
    "state": "NV",
    "zip": 89002, 
    "havecheckingaccount": true,   
    "source": "yourdomain.com",
    "sub1": "your sub id",
    "sub2": "",
    "sub3": "",
    "sub4": "",
    "sub5": ""
  }
}

SAMPLE RESPONSE

When a Direct Mail lead is posted to us, a JSON response will be returned containing useful information about whether the lead was accepted and any additional information we can provide. Below is an example of a successful response.

{
    "validated": 1,
    "accepted": 1,
    "sold": 1,
    "disposition": ,
    "messages": [],
    "errors": [],    
    "transactionid": 123456789,
    "leadid": 123456789
}

FAILED RESPONSE

If the request failed, the response will include an errors object which may contain 1 or more error messages. This example will return an error message because the date passed in was not a valid date (1979-02-30).

{
    "validated": 0,
    "accepted": 0,
    "sold": 0,
    "disposition": ,
    "messages":
    [
        "Direct Mail Lead could not be validated"
    ],
    "errors":
    [
        [
            "DOB (required): DOB (required): date not valid"
        ]
    ]
}