Difference between revisions of "Send Lead API"
| Line 92: | Line 92: | ||
; RESULT=ERROR&RESULT_DETAIL=Invalid zip code. : Non-numerics will be stripped out. Currently only US zip codes are supported. | ; RESULT=ERROR&RESULT_DETAIL=Invalid zip code. : Non-numerics will be stripped out. Currently only US zip codes are supported. | ||
; RESULT=ERROR&RESULT_DETAIL=Unable to read date. : If the Date of Birth (dob) or Date of Denial (applied_denial_date) is invalid, this error will show up. See above in Description of Form Fields for the valid format. | ; RESULT=ERROR&RESULT_DETAIL=Unable to read date. : If the Date of Birth (dob) or Date of Denial (applied_denial_date) is invalid, this error will show up. See above in Description of Form Fields for the valid format. | ||
| + | |||
| + | =Sample PHP FORM SUBMIT script= | ||
| + | |||
| + | <pre> | ||
| + | <?php | ||
| + | |||
| + | // | ||
| + | // sendlead tester script - a barebones FORM ACTION script in PHP | ||
| + | // | ||
| + | |||
| + | $data = array( | ||
| + | 'affiliate_id' => "123123", | ||
| + | 'name_last' => "Smith", | ||
| + | 'name_first' => "John", | ||
| + | 'dob' => "1985-01-10", | ||
| + | 'email' => "jsmith@example.com", | ||
| + | 'phone_home' => "5852325670", | ||
| + | 'addr_street' => "69 Cascade Dr", | ||
| + | 'addr_city' => "Rochester", | ||
| + | 'addr_state' => "NY", | ||
| + | 'addr_zip' => "14614", | ||
| + | 'applied_yn' => "Y", | ||
| + | 'applied_result' => "denied", | ||
| + | 'applied_denial_date' => "2010-12-31", | ||
| + | 'out_of_work_yn' => "Y", | ||
| + | 'stop_work_date' => "2009-11-30", | ||
| + | 'work_half_yn' => "Y", | ||
| + | 'disability' => "dizziness", | ||
| + | 'talk_to_lawyer_yn' => "Y", | ||
| + | 'doc_yn' => "Y", | ||
| + | 'have_lawyer_yn' => "N", | ||
| + | 'is_test_lead' => "1", | ||
| + | ); | ||
| + | |||
| + | $baseurl = "http://devel3.netsville.com/us-social-security-disability.com/admin/sendlead.php"; | ||
| + | $userAgent = 'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)'; | ||
| + | $timeout = 10; | ||
| + | |||
| + | $ch = curl_init(); | ||
| + | |||
| + | curl_setopt($ch, CURLOPT_POST, true); | ||
| + | curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); | ||
| + | curl_setopt($ch, CURLOPT_VERBOSE, false); | ||
| + | curl_setopt($ch, CURLOPT_HEADER, true); | ||
| + | curl_setopt($ch, CURLINFO_HEADER_OUT, true); | ||
| + | curl_setopt($ch, CURLOPT_USERAGENT, $userAgent); | ||
| + | curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout); | ||
| + | curl_setopt($ch, CURLOPT_URL, $baseurl); | ||
| + | curl_setopt($ch, CURLOPT_POSTFIELDS, $data); | ||
| + | |||
| + | |||
| + | $content = curl_exec($ch); | ||
| + | curl_close($ch); | ||
| + | |||
| + | if (!$content) { | ||
| + | echo "ERROR: No data received.\n"; | ||
| + | exit(); | ||
| + | } | ||
| + | |||
| + | echo "$content\n"; | ||
| + | |||
| + | ?> | ||
| + | |||
| + | </pre> | ||
| + | |||
| + | A successful result should look like this: | ||
| + | |||
| + | <pre> | ||
| + | HTTP/1.1 100 Continue | ||
| + | |||
| + | HTTP/1.1 200 OK | ||
| + | Date: Mon, 26 Aug 2013 19:38:59 GMT | ||
| + | Server: Apache | ||
| + | Vary: Accept-Encoding | ||
| + | Content-Length: 32 | ||
| + | Content-Type: text/html | ||
| + | |||
| + | RESULT=SUCCESS&RESULT_DETAIL=919 | ||
| + | </pre> | ||
Revision as of 15:42, 26 August 2013
Contents
Overview
This is a work in progress. This document describes how to submit leads directly to Netsville via an HTTP POST Request. Requests are submitted to a CGI script with Key-Value Pairs in the BODY of the request.
Request Requirements
- POST (only)
Only standard POST requests are allowed. Either Content-type of multipart/form-data or application/x-www-form-urlencoded.
Each key-value pair is separated by an '&' character, and each key is separated from its value by an '=' character. Keys and values are both escaped by replacing spaces with the '+' character and then using URL encoding on all other non-alphanumeric characters.
URI (Test Server)
Currently, just the testing server is available. Here is the main URI:
http://devel3.netsville.com/us-social-security-disability.com/admin/sendlead.php
Sample Request Body
POST /us-social-security-disability.com/admin/sendlead.php HTTP/1.1 User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0) Host: devel3.netsville.com Accept: */* Content-Length: 394 Content-Type: application/x-www-form-urlencoded affiliate_id=123123&name_last=Smith&name_first=John&dob=1985-01-10&email=jsmith@example.com&phone_home=5852325670 &addr_street=69 Cascade Dr&addr_city=Rochester&addr_state=NY&addr_zip=14614&applied_yn=Y&applied_result=denied &applied_denial_date=2010-12-31&out_of_work_yn=Y&stop_work_date=2009-11-30&work_half_yn=Y&disability=dizziness &talk_to_lawyer_yn=Y&doc_yn=Y&have_lawyer_yn=N&is_test_lead=1
Description of Form Fields
| Field | Description | Type | Required | Example |
|---|---|---|---|---|
| affiliate_id | Unique identifier given to you by Netsville. A 6-digit number. | Numeric | Yes | 123123 |
| name_last | Last Name of Person | Alpha | Yes | Smith |
| name_first | First Name of Person | Alpha | Yes | John |
| dob | Date of Birth in YYYY-MM-DD format | Date | Yes | 1985-01-15 |
| Email address | Yes | jsmith@example.com | ||
| phone_home | 10 digit home phone number in NNNXXXYYYY format (numbers only) | Numeric | Yes | 5855551212 |
| addr_street | Street address | Alphanumeric | Yes | 123 Main Street |
| addr_city | City | Alpha | Yes | Rochester |
| addr_state | State (two letter abbreviation) | Alpha | Yes | NY |
| addr_zip | Zip code (5 numbers) | Numeric | Yes | 14614 |
| disability | What is the condition that prevents you from working? | Alpha | Yes | A-Fib, heart condition, dizziness |
| out_of_work_yn | Do you expect to be out of work for the next 12 months? Either Yes(Y) or No(N) |
Alpha | Yes | Y |
| stop_work_date | The date that you stopped working in YYYY-MM-DD format | Date | Yes | 2009-11-30 |
| applied_yn | Have you applied for Social Security Disability? Either Yes(Y) or No(N) |
Alpha | Yes | Y |
| applied_result | What was the result of your application? The possible choices are: Claim Pending, Receiving Benefits, Claim Denied. The answer must contain one of these words: 'pending', 'benefits', or 'denied' |
Alpha | Yes | denied |
| applied_denial_date | If the above answer contains 'denied', then this field must contain the date of that denial in the format: YYYY-MM-DD. Otherwise, this field can be empty. | Date | No | 2010-12-31 |
| work_half_yn | Have you worked 5 out of the last 10 years? This field can be empty. | Alpha | No | N |
| talk_to_lawyer_yn | Would you like a free consultation (speak to a laywer)? If this is blank, YES(Y) is assumed. | Alpha | No | Y |
| doc_yn | In the past 6 months, have you seen a doctor? Either Yes(Y) or No(N). This field can be empty. |
Alpha | No | N |
| have_lawyer_yn | Do you currently have an attorney helping you? Either Yes(Y) or No(N). This field can be empty. |
Alpha | No | N |
| is_test_lead | A trigger to mark lead as only a test in the database. Use '1' for Yes and '0' for No. This field can be empty. | Numeric | No | 0 |
Return Values
The result will be of Content-type: text/html and a single line. For example:
A Successful Result
- RESULT=SUCCESS&RESULT_DETAIL=906
- The RESULT_DETAIL is the id of the lead added to the database if successful.
An Unsuccessful Result
- RESULT=ERROR&RESULT_DETAIL=<a list of Missing Fields>
- This will be the most common. If we need to tweak the required fields, we will.
Other Errors
- RESULT=ERROR&RESULT_DETAIL=Could not find your affiliate id. Please contact Netsville.
- Unable to find your affiliate id in our database. Email support@netsville.com to verify your affiliate number.
- RESULT=ERROR&RESULT_DETAIL=Invalid home phone number. Must be numeric and 10 digits.
- Non-numerics will be stripped out, but if the number is the wrong length, this error will be displayed.
- RESULT=ERROR&RESULT_DETAIL=Invalid zip code.
- Non-numerics will be stripped out. Currently only US zip codes are supported.
- RESULT=ERROR&RESULT_DETAIL=Unable to read date.
- If the Date of Birth (dob) or Date of Denial (applied_denial_date) is invalid, this error will show up. See above in Description of Form Fields for the valid format.
Sample PHP FORM SUBMIT script
<?php
//
// sendlead tester script - a barebones FORM ACTION script in PHP
//
$data = array(
'affiliate_id' => "123123",
'name_last' => "Smith",
'name_first' => "John",
'dob' => "1985-01-10",
'email' => "jsmith@example.com",
'phone_home' => "5852325670",
'addr_street' => "69 Cascade Dr",
'addr_city' => "Rochester",
'addr_state' => "NY",
'addr_zip' => "14614",
'applied_yn' => "Y",
'applied_result' => "denied",
'applied_denial_date' => "2010-12-31",
'out_of_work_yn' => "Y",
'stop_work_date' => "2009-11-30",
'work_half_yn' => "Y",
'disability' => "dizziness",
'talk_to_lawyer_yn' => "Y",
'doc_yn' => "Y",
'have_lawyer_yn' => "N",
'is_test_lead' => "1",
);
$baseurl = "http://devel3.netsville.com/us-social-security-disability.com/admin/sendlead.php";
$userAgent = 'Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Trident/5.0)';
$timeout = 10;
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_VERBOSE, false);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLINFO_HEADER_OUT, true);
curl_setopt($ch, CURLOPT_USERAGENT, $userAgent);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, $timeout);
curl_setopt($ch, CURLOPT_URL, $baseurl);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$content = curl_exec($ch);
curl_close($ch);
if (!$content) {
echo "ERROR: No data received.\n";
exit();
}
echo "$content\n";
?>
A successful result should look like this:
HTTP/1.1 100 Continue HTTP/1.1 200 OK Date: Mon, 26 Aug 2013 19:38:59 GMT Server: Apache Vary: Accept-Encoding Content-Length: 32 Content-Type: text/html RESULT=SUCCESS&RESULT_DETAIL=919