Anda di halaman 1dari 12

LifePipe API Implementation Guide

Information Technology Department

September 14, 2010 Version 3.6.4

Table of Contents
Introduction.....................................................................................................................................3 1.1 Audience................................................................................................................................3 1.2 Revision History....................................................................................................................3 1.3 Glossary.................................................................................................................................3 2 Interfaces.......................................................................................................................................3 2.1 Term Quote Engine................................................................................................................3 2.1.1 Security...........................................................................................................................3 2.1.2 Supporting Information...................................................................................................4 2.1.3 Term Quotes....................................................................................................................6

LifePipe API Implementation Guide

Introduction
This document is intended to provide information to implement a customized user interface to the iPipeline LifePipe application. The API provided allows for retrieval of term quotes without requiring the user to enter the criteria into the iPipeline user interface.

1.1 Audience
This document is intended for the personnel implementing the interface between a custom solution and LifePipe and therefore is technical in nature.

1.2 Revision History


Version 3.6.4 3.6.3 3.6.2 1.0.0 Revision Date 9/14/2010 1/30/2006 12/1/2005 08/03/2005 Author Jesse Sha Jay Simoni Jay Simoni Jay Simoni Summary of Change Updated Accepted input values for parameters smoker, healthCommon, premium and guarantee. Added the ProductInformationID field to the Quick & Summary output. Updated for new API interface. Initial Draft.

1.3 Glossary
If you are unfamiliar with some of the life insurance industry terms used in this document, you may find the following website useful: https://www.matrixdirect.com/free_information/glossary.html

2 Interfaces
2.1 Term Quote Engine
The term quote engine API is implemented using a web service. The URL for this web service is: Testing: http://LifePipeAPI.stg.iPipeline.com/TermQuotesAPI.asmx (rates may not be accurate, but functionality will match production) Production: http://LifePipeAPI.iPipeline.com/TermQuotesAPI.asmx You can retrieve the XML schema information from http://LifePipeAPI.stg.iPipeline.com/TermQuotesAPI.asmx?wsdl

2.1.1 Security
Both the testing & production web services require a username and password. Please contact your iPipeline sales rep if you need a username and password to access either of these instances.

Page 3 of 12

LifePipe API Implementation Guide

2.1.1.1 Sample code


2.1.1.1.1 C#
WebService1 ws = new LifePipeAPI(); // Create a new instance of CredentialCache. CredentialCache credentialCache = new CredentialCache(); // Create a new instance of NetworkCredential using the client // credentials reading the username and password values from // dialogbox components. NetworkCredential credentials = new NetworkCredential(username,password); // Add the NetworkCredential to the CredentialCache. credentialCache.Add(new Uri(ws.Url),"Basic",credentials); // Add the CredentialCache to the proxy class credentials. ws.Credentials = credentialCache; ws.PreAuthenticate = true; Gender[] g = ws.GetGenders(); for(int i=0; i<=g.Length -1; i++) { MessageBox.Show(g[i].GenderName); }

2.1.1.1.2 Java
Context ctx = new Context(); ctx.setProperty("authUser",username); ctx.setProperty("authPassword",password); String url = "http://LifePipeAPI.stg.iPipeline.com/TermQuotesAPI.asmx?wsdl"; IWebService1Soap ws = (IWebService1Soap)Registry.bind( url, IWebService1Soap.class,ctx); System.out.println(ws.GetGenders()[0].GenderName);

2.1.1.1.3 Visual Basic


Dim httpPost As MSXML2.ServerXMLHTTP Dim domResponse As New MSXML2.DOMDocument40 Set httpPost = CreateObject("MSXML2.ServerXMLHTTP") httpPost.Open "POST", apiURL, False httpPost.setRequestHeader "Content-Type", "text/xml; charset=utf-8" httpPost.setRequestHeader "Content-Length", Len(domPost.XML) httpPost.setRequestHeader "Authorization", "Basic " & Base64Encode(apiURLUsername & ":" & apiURLPassword) httpPost.setRequestHeader "SOAPAction", apiSoapAction httpPost.send domPost.XML domResponse.loadXML(httpPost.responseXML.XML)

2.1.1.1.4 Microsoft.NET Notes


In some cases we have seen Microsoft Visual Studio not generate the proxy classes for the Term Quote calls as intended, resulting in not being able to get a successful response back from these methods. In these cases, we recommend programmatically generating the XML and posting it to our web service. If you would like an example of how to do this in VB.NET, please ask our support personnel for the LifePipeAPITest.zip.

2.1.2 Supporting Information

2.1.2.1 States
Method Name Description GetStates This procedure returns all of the states in the customer term quote engine profile.

Page 4 of 12

LifePipe API Implementation Guide

Parameters

GAID

Returns

This value uniquely identifies each customer. Your GAID will be provided to you by iPipeline and will be the same for all requests you make to the LifePipe API. A collection of State objects that contain the state code and name.

2.1.2.2 Term Lengths


Method Name Description Parameters Returns GetTermLengths This procedure returns all of the term lengths in the term quote engine. (none) A collection of TermLength objects that contain an ID and name.

2.1.2.3 Default Child Riders


Method Name Description Parameters Returns GetDefaultChildRiderUnits This procedure returns all of the available child rider units in the term quote engine. (none) A collection of ChildRider objects that contain the units.

2.1.2.4 Child Riders


Method Name Description Parameters GetChildRiderUnits This procedure returns the child rider units for the GAID, products, and/or term length requested. If no products or term lengths are provided, child riders for all products in the customer term quote engine profile will be returned. GAID This value uniquely identifies each customer. Your GAID will be provided to you by iPipeline and will be the same for all requests you make to the LifePipe API. Products A collection of CompanySeries objects to include in the search for applicable child riders. Term Lengths A collections of TermLength objects to include in the search for applicable child riders. A collection of ChildRider objects that contain the units.

Returns

2.1.2.5 Companies
Method Name Description Parameters GetCompanies This procedure returns all of the companies in the customer term quote engine profile. GAID This value uniquely identifies each customer. Your GAID will be provided to you by iPipeline and will be the same for all requests you make to the LifePipe API. A collection of Company objects that contain the ID and name.

Returns

2.1.2.6 Generic Health Classes


Method Name Description Parameters Returns GetGenericHealthClasses This procedure returns all of the generic health classes in the term quote engine. (none) A collection of HealthClass objects that contain the ID and name.

2.1.2.7 Genders
Method Name GetGenders

Page 5 of 12

LifePipe API Implementation Guide

Description Parameters Returns

This procedure returns all of the genders in the term quote engine. (none) A collection of Gender objects that contain the ID and name.

2.1.2.8 Series By Company


Method Name Description Parameters GetSeriesByCompanies This procedure returns all of the series in the customer term quote engine profile for a particular company. GAID This value uniquely identifies each customer. Your GAID will be provided to you by iPipeline and will be the same for all requests you make to the LifePipe API. CompanyID The ID of the company to return the product series that exist in the customer profile. A collection of Series objects that contain the ID and name.

Returns

2.1.2.9 Table Ratings


Method Name Description Parameters Returns GetTableRatings This procedure returns all of the available table ratings in the term quote engine. (none) A collection of TableRating objects that contain the numeric and alpha values.

2.1.2.10
Method Name Description Parameters Returns

AMBest Ratings
GetAMBestRatings This procedure returns all of the available AMBest ratings in the term quote engine. (none) A collection of AMBestRating objects that contain the value and name values.

2.1.3 Term Quotes

2.1.3.1 Quick Term Life Quote


Method Name Description Parameters Returns GetQuickTermLifeQuote (please see section 2.1.3.4) (please see section 2.1.3.5)

2.1.3.2 Summary Term Life Quote


Method Name Description Parameters Returns GetSummaryTermLifeQuote (please see section 2.1.3.4) (please see section 2.1.3.5)

2.1.3.3 Detailed Term Life Quote


Method Name Description Parameters Returns GetDetailedTermLifeQuote (please see section 2.1.3.4) (please see section 2.1.3.5)

Page 6 of 12

LifePipe API Implementation Guide

2.1.3.4 Term Quote Input Parameters


Whether or not the parameter is relevant to the method is determined by the Quick, Summary, and Detailed columns. Key: O = Optional R = Required N/A = Not applicable
Parameter userID gaID subscriber ID showTop Parameter Description This value uniquely identifies each user. This value uniquely identifies each customer. Number of results to display. Show Top X results or 0 for show All results Acceptable Input Values Any string of less than 30 characters. Value provided by iPipeline. Value Description Used to track the user who requested the quotes. Your GAID will be provided to you by iPipeline and will be the same for all requests you make to the LifePipe API. Used internally by iPipeline systems 0 = return all results Return top X results Notes This value is required for external customers.

0 >0

When using a Show Top value greater than 0, only 3 or less term lengths should be specified.

productsSelected state actualAge nearestAge savedAge

List of products to return. This value identifies which state the insured lives in Actual age of the insured Nearest age of the insured Flag to determine whether or not to return quotes based on saved age. This value identifies the sex of the insured. This value identifies the face amount of this quote

An instance of the ProductSelected object. Two letter abbreviation for state. >0 >0 true false

Return all products that meet the criteria. Two letter abbreviation for state. Integer greater than zero indicates actual age Integer greater than zero indicates nearest age Include saved age products in the results Do NOT include saved age products in the results. The ID value is required, but the name is not.

sex amounts

An instance of the Gender object. A collection of up to 3 decimal values of the face amount to run the quote for.

premium termLengths smoker healthCommon This value is a list to identify the term of the quote. This value identifies if the insured is a smoker or not This value identifies the insureds health class A collection of TermLength objects A value from the Smoker enumeration. A collection of HealthClass objects.

1 = Male 2 = Female Alternate amounts have no been fully implemented ye therefore only a single value should be passed. This parameter is depreciated and therefore nothing should be passed.

NonSmoker/Smoker/All HealthClassID is carrier dependent, 0=All. 1=PB (Preferred Best), 2=PNT (Preferred Non-Tobacco), 3=SNT (Standard Non-Tobacco), 4=PT (Preferred Tobacco), 5=ST (Standard Tobacco). Annual/SemiAnnual/Quarterly/Monthly

premium illustrateYears

guarantee

This value identifies the premium mode This value is a flag to determine for how many years to illustrate the quote for. This value identifies if the quote is for fully guaranteed, non- guaranteed products or simplified issue.

A value from the PremiumMode enumeration. A value from the IllustrateYears enumeration. A value from the GuaranteePeriod enumeration.

GuaranteedAndNonGuaranteed/Guarante edOnly/SimplifiedIssue

Page 7 of 12

LifePipe API Implementation Guide

Parameter adbFlag

Parameter Description This value is a flag to determine whether results should include quotes with Accidental Death Benefit. This value is a flag to determine whether results should include quotes with waiver of premium. This value is a flag to determine whether results should include quotes with child-riders. This value identifies the child-rider units This value identifies if return of premium/cash endowment. This value identifies which carriers to return products for based on their table rating. The flat extras to include in the quote results.

Acceptable Input Values false

Value Description Return quotes without Accidental Death Benefit included. Return quotes with Accidental Death Benefit required. Return quotes without Waiver of Premium included. Return quotes with Waiver of Premium required. Return quotes without Child Rider required. Return quotes with Child Rider required. If CR is false, this element should not contain an instance of the ChildRider object. The ID value is required, but the name is not. Return quotes without Return of Premium included. Return quotes with Return of Premium required. If no TableRating object is provided, all carriers in the customer profile will be returned. The numeric value is required, but the alpha value is not. All carriers in the customer profile with a higher rating than the one provided, will be returned. The value is required, but the name is not. If no Company objects are provided, all carriers in the customer profile will be returned. If no CompanySeries objects are provided, all carriers and products in the customer profile will be returned. If no CompanyHealthClass objects are provided, products for all health classes will be returned.

Notes

true wpFlag false

true crFlag false

true cruFlag An instance of the ChildRider object. false true tableRating An instance of the TableRating object. An instance of the FlatExtra object An instance of the AMBestRating object. A collection of Company objects. A collection of CompanySeries objects. A collection of the CompanyHealthClass object.

ropFlag

commonFlatExtras minCarrierRatingValue

companyList productList healthCompany

The list of carriers to return quotes for The listing of which products to return quotes for.

Note: when parameters are listed above as optional, the parameter itself still needs to be passed, but can be empty.
<?xml version="1.0" encoding="utf-8"?> <soap:Envelope xmlns:soap="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://LifePipe.iPipeline.com/"> <soap:Body> <tns:GetQuickTermLifeQuote> <tns:userID/> <tns:gaID>0000</tns:gaID> <tns:subscriberID/> <tns:showTop>0</tns:showTop> <tns:productsSelected/> <tns:state>OR</tns:state> <tns:actualAge>35</tns:actualAge> <tns:nearestAge>35</tns:nearestAge> <tns:savedAge>true</tns:savedAge> <tns:sex> <tns:GenderID>1</tns:GenderID> <tns:GenderName/> </tns:sex>

Page 8 of 12

LifePipe API Implementation Guide

<tns:amounts> <tns:decimal>500000</tns:decimal> </tns:amounts> <tns:premium/> <tns:termLengths> <tns:TermLength> <tns:TermLengthID>0</tns:TermLengthID> <tns:TermLengthName/> </tns:TermLength> </tns:termLengths> <tns:smoker>All</tns:smoker> <tns:healthCommon> <tns:HealthClassID>0</tns:HealthClassID> <tns:HealthClassName/> </tns:healthCommon> <tns:premiumMode>Monthly</tns:premiumMode> <tns:guarantee>GuaranteedAndNonGuaranteed</tns:guarantee> <tns:adbFlag>true</tns:adbFlag> <tns:wpFlag>true</tns:wpFlag> <tns:crFlag>false</tns:crFlag> <tns:cru/> <tns:ropFlag>true</tns:ropFlag> <tns:tableRating/> <tns:commonFlatExtras/> <tns:minCarrierRatingValue/> <tns:companyList/> <tns:productList/> <tns:healthCompany/> </tns:GetQuickTermLifeQuote> </soap:Body> </soap:Envelope>

2.1.3.5 Term Quote Output Values


2.1.3.5.1 Quick Level Values
Field RecID CompanyID SeriesID Version Term CompanyName AMBest SandPRating DisclosureID ProductDisclosure ProductImportantInfo SeriesName ProductName ProductImportantInfoID CommonHealthClassID Smoker ShortHealthClassName LongHealthClassName Sex AgeNearestProduct RealTerm GuaranteedTerm SavedAge FaceAmount AnnualTotalPremium AnnualBasePremium Description iPipeline internal ID for the product criteria selection. iPipeline internal ID for the carrier. iPipeline internal ID for the product series. iPipeline internal version number of the product. Term Length (in years) for the quote. Carrier name. The carrier AM Best rating. The carrier S & P rating. iPipeline internal ID for the product disclosure. Carrier provided product disclosure (if provided). Important information regarding the product. Series name for the product quoted. Product name. iPipeline internal id for product specific important information. iPipeline internal common health class ID Flag to determine whether or not the quote is for a smoker or nonsmoker. Carrier specific health class abbreviation. Carrier specific health class name iPipeline internal ID for sex. Flag to determine whether the product is an age nearest or age last product. The real term of the quote. The guaranteed term of the quote. Flag to determine whether or not the quote is a saved age quote. If this is field a value other than zero, this is the saved age value that was used. The amount that was used to calculate the quote. Annual total premium. Annual base premium. Notes

Usually this is where we store a string to display alerting the user of the effective dates of the current rates.

Page 9 of 12

LifePipe API Implementation Guide

Field AnnualADBPremium AnnualWPPremium AnnualCEPremium AnnualCRPPremium SemiAnnualTotalPremium SemiAnnualPremium SemiAnnualADBPremium SemiAnnualWPPremium SemiAnnualCEPremium SemiAnnualCRPPremium QuarterlyTotalPremium QuarterlyPremium QuarterlyADBPremium QuarterlyWPPremium QuarterlyCEPremium QuarterlyCRPPremium MonthlyTotalPremium MonthlyPremium MonthlyADBPremium MonthlyWPPremium MonthlyCEPremium MonthlyCRPPremium TableRatingName ImportantInfo

Description Annual accidental death benefit premium. Annual waiver of premium premium. Annual cash endowment (a.k.a. return of premium) premium. Annual child rider premium. Semi-annual total premium. Semi-annual base premium. Semi-annual accidental death benefit premium. Semi-annual waiver of premium premium. Semi-annual cash endowment (a.k.a. return of premium) premium. Semi-annual child rider premium. Quarterly total premium. Quarterly base premium. Quarterly accidental death benefit premium. Quarterly waiver of premium premium. Quarterly cash endowment (a.k.a. return of premium) premium. Quarterly child rider premium. Monthly total premium. Monthly base premium. Monthly accidental death benefit premium. Monthly waiver of premium premium. Monthly cash endowment (a.k.a. return of premium) premium. Monthly child rider premium. The table rating value for the quote. Important information regarding the carrier.

Notes

2.1.3.5.2 Summary Level Values


Field RecID CompanyID SeriesID Version Term RatingsID CompanyName LogoEnabled AMBest SandPRating DisclosureID ProductDisclosure ProductImportantInfo SeriesName ProductName ProductImportantInfoID PolicyFormNumber CarrierHealthClassID CommonHealthClassID Smoker ShortHealthClassName LongHealthClassName Sex AgeNearestProduct RealTerm GuaranteedTerm PolicyFee CRURate CRAmount MinimumAnnualPremium MinimumAge Description iPipeline internal ID for the product criteria selection. iPipeline internal ID for the carrier. iPipeline internal ID for the product series. iPipeline internal version number of the product. Term Length (in years) for the quote. iPipeline internal ID to the company ratings. Carrier name. Flag to determine whether or not the carrier logo can be displayed. The carrier AM Best rating. The carrier S & P rating. iPipeline internal ID for the product disclosure. Carrier provided product disclosure (if provided). Important information regarding the product. Series name for the product quoted. Product name. iPipeline internal id for product specific important information. Legal name for product (if available). iPipeline internal carrier specific health class ID. iPipeline internal common health class ID Flag to determine whether or not the quote is for a smoker or nonsmoker. Carrier specific health class abbreviation. Carrier specific health class name iPipeline internal ID for sex. Flag to determine whether the product is an age nearest or age last product. The real term of the quote. The guaranteed term of the quote. The policy fee included in the quote. Child rider dollar amount per unit. Child rider premium Minimum annual premium allowed by product. The minimum age for the product criteria. Notes

This field is intended for future use and has not been implemented yet.

Usually this is where we store a string to display alerting the user of the effective dates of the current rates.

Page 10 of 12

LifePipe API Implementation Guide

Field MaximumAge SavedAge BaseRate MinimumFaceAmount MaximimFaceAmount FaceAmount AnnualTotalPremium AnnualBasePremium AnnualADBPremium AnnualWPPremium AnnualCEPremium AnnualCRPPremium SemiAnnualTotalPremium SemiAnnualPremium SemiAnnualADBPremium SemiAnnualWPPremium SemiAnnualCEPremium SemiAnnualCRPPremium QuarterlyTotalPremium QuarterlyPremium QuarterlyADBPremium QuarterlyWPPremium QuarterlyCEPremium QuarterlyCRPPremium MonthlyTotalPremium MonthlyPremium MonthlyADBPremium MonthlyWPPremium MonthlyCEPremium MonthlyCRPPremium TableRatingName AnnualPolicyFee SemiAnnualPolicyFee QuarterlyPolicyFee MonthlyPolicyFee ADBExpirationAge WPExpirationAge CEExpirationAge CRExpirationAge ImportantInfo AnnualModalFactor SemiAnnualModalFactor QuarterlyModalFactor MonthlyModalFactor MaximumADBAmount FormsProductID

Description The maximum age for the product criteria. Flag to determine whether or not the quote is a saved age quote. If this is field a value other than zero, this is the saved age value that was used. Rate per thousand. The minimum face amount for the product criteria. The maximum face amount for the product criteria. The amount that was used to calculate the quote. Annual total premium. Annual base premium. Annual accidental death benefit premium. Annual waiver of premium premium. Annual cash endowment (a.k.a. return of premium) premium. Annual child rider premium. Semi-annual total premium. Semi-annual base premium. Semi-annual accidental death benefit premium. Semi-annual waiver of premium premium. Semi-annual cash endowment (a.k.a. return of premium) premium. Semi-annual child rider premium. Quarterly total premium. Quarterly base premium. Quarterly accidental death benefit premium. Quarterly waiver of premium premium. Quarterly cash endowment (a.k.a. return of premium) premium. Quarterly child rider premium. Monthly total premium. Monthly base premium. Monthly accidental death benefit premium. Monthly waiver of premium premium. Monthly cash endowment (a.k.a. return of premium) premium. Monthly child rider premium. The table rating value for the quote. The annual policy fee included in the quote. The semi-annual policy fee included in the quote. The quarterly policy fee included in the quote. The monthly policy fee included in the quote. Age at which this rider is no longer applicable to the policy. Age at which this rider is no longer applicable to the policy. Age at which this rider is no longer applicable to the policy. Age at which this rider is no longer applicable to the policy. Important information regarding the carrier. The annual modal factor. The semi-annual modal factor. The quarterly modal factor. The monthly modal factor. Maximum amount of accidental death benefit coverage. The Product ID in the iPipeline Forms Engine that is associated with this product.

Notes

Page 11 of 12

LifePipe API Implementation Guide

2.1.3.5.3 Detail Level Values


Field PolicyYear Age AnnualtPremium SemiAnnualPremium QuarterlyPremium MonthlyPremium SemiAnnualPremiumAnnualPayment QuarterlyPremiumAnnualPayment MonthlyPremiumAnnualPayment GuaranteedAnnualPremium GuaranteedSemiAnnualPremium GuaranteedQuarterlyPremium GuaranteedMonthlyPremium GuaranteedSemiAnnualPremiumAnnualPayment GuaranteedQuarterlyPremiumAnnualPayment GuaranteedMonthlyPremiumAnnualPayment Description Incremental number to determine the policy year of the quote. The age of the insured at policy year one. Annual premium in policy year. Semi-annual premium in policy year. Quarterly premium in policy year. Monthly premium in policy year. Annual total payment of semi-annual premium in policy year. Annual total payment of quarterly premium in policy year. Annual total payment of monthly premium in policy year. Annual guaranteed premium in policy year. Semi-annual guaranteed premium in policy year. Quarterly guaranteed premium in policy year. Monthly guaranteed premium in policy year. Annual total payment of semi-annual guaranteed premium in policy year. Annual total payment of quarterly guaranteed premium in policy year. Annual total payment of monthly guaranteed premium in policy year. Notes

Page 12 of 12