Diligent Forms API® (BETA)

Automate the creation and population of diligent search documentation, including affidavits and state-specific filing forms.

Introduction

We know documents suck, from creation to storage to filing. So, we developed Diligent Forms API® - the newest fully automated document-producing software on the surplus lines tax filing market.

Before, account managers and brokers had to download blank templates and complete them. Now, they can populate them right away, eliminating back-and-forth emails and unnecessary follow-ups.

With this API users can store diligent search information, populating complete affidavits, auto-generating state filing forms, and producing state diligent effort forms.

📘

Note:

This product is in BETA and is currently available to all InsCipher customers for testing until September 1st, 2024 - after which it will be a premium endpoint. If you encounter any problems, please communicate this to us immediately at [email protected].

🚧

Before Getting Started:

InsCipher utilizes data tables outside of the documentation for every request to provide the most up to date requirements for your integration. Depending on your configuration, you may need to reference the following tables, which will be mentioned further down in the documentation.

Feel free to open these in a new window or bookmark for future use:

Workflow Steps

  1. The user would get an API key.
  2. The user would submit a JSON request to the Affidavit Endpoint. The body of the request would contain information needed to complete the affidavit.
  3. The request will be made through the surpluslines.inscipher.com endpoint.
    1. This endpoint would communicate with PDF Cipher to determine the form to fill out and complete the form document.
    2. PDF Cipher sends a downloadable link to the surpluslines.inscipher.com endpoint.
  4. The surpluslines.inscipher.com endpoint returns the link to the user as a JSON response.
  5. The user can retrieve documents using the link.

See Diagram:

Request Method

A REST API using a JSON POST request that will allow an agency admin/filing agency admin user to programmatically receive completed documents that are populated automatically using PDF Cipher.

HTTP Method: POST

URL Endpoint (API key in Header)

https://surpluslines.inscipher.com/api/pdf-filing-affidavit/generate.json

apikey = xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

The API Key should be passed through in the header.

Example:

JSON Request Sample

{ 
"quote_id": 1234567, 
"physical_state_code": "AK", 
"transaction_type": "PN", 
"policy_effective_date": "2023-09-01", 
"policy_expiration_date": "2024-09-01", 
"policy_number": "FLD23-1323A", 
"rpg": 0, 
"ecp": 0, 
"account_written_as": "DC", 
"transaction_line_of_business": "GEN-1000", 
"non_admitted_insurer_code": "AA-1122000", 
"syndicate_list": "AA-1120131|AA-1120124", 
"policy_limit": "1000000", 
"property_limit": "0", 
"risk_description": "", 
"windstorm_exclusion": 1, 
"sla_transaction_number": "", 
"premium": "10000", 
"inspection_fee": "200" ,
"agency_fee": "100", 
"sl_tax": "10.25", 
"stamping_fee": "2.25", 
"sl_service_charge": "10.00", 
"municipal_fee": "0.00", 
"fm_tax": "0.00", 
"empa_tax": "0.00", 
"total": "322.50", 
"mailing_insured_name": "Donald Duck", 
"mailing_insured_address": "234 Park Street", 
"mailing_insured_address2": "", 
"mailing_city": "New York", 
"mailing_state_code": "NY", 
"mailing_zip_code": "54321", 
"physical_address": "234 Park Street", 
"physical_address2": "", 
"physical_city": "New York", 
"physical_zip_code": "12345", 
"insured_phone": "111-222-3333", 
"insured_email": "[email protected]", 
"insured_entity": "commercial", 
"insured_signature": "(BASE64 code - see below)", 
"agent_id": 24 
}

Surplus Line Broker Detail - (Only needed when Account Written As = "DC")

This line of code should be used to complete SL Broker fields and to determine Producing Broker when Account Written As = "DC" (Direct to Client). In other words, you are selling the policy directly to the insured (not through a retail agent).

Only agent_id is needed if the SL Broker Information is stored in InsCipher users/licenses; if, however, agent_id is not provided, then agency and license info should be provided by adding the following fields to the API request:

"broker_name": "Mickey Mouse",
"license_type": "producer",
"license_number": "12345678",
"license_name": "MM Insurance Agency",
"agency_license_number": "87654321",
"agency_street_address": "123 Main St",
"agency_street_address2": "Suite B23",
"agency_city": "San Diego",
"agency_state": "CA",
"agency_zip_code": "12345",
"agency_phone": "111-222-3333",
"agency_email": "[email protected]",
"sl_broker_signature": "(BASE64 code - see below)",

Retail Producer Detail (Only needed when Account Written As = "B")

Add to the bottom of the request above. Do not include or consider these values if Account Written As = Direct Client (DC).

"retail_producer_name": "Mickey Mouse",
"retail_agency_name": "MM Agency",
"retail_address": "123 Main St",
"retail_address2": "Suite B",
"retail_city": "San Diego",
"retail_state": "CA",
"retail_zip": "12345",
"retail_producer_license": "123456789",
"retail_agency_license": "987654321",
"retail_phone_number": "111-222-3333",
"retail_email_address": "[email protected]",
"retail_producer_signature": "(BASE64 code - see below)",

Declining Carrier Detail (Optional if "Declining Carrier Defaults" are Set)

Add to the bottom of the request above. Do not include or consider these values if defaults are set up in user settings.

"dc_naic": "54267|37816|49865",
"dc_date_declined": "2017-02-02|2017-02-03|2017-02-04",
"dc_declining_reason": "wrong|bad|incorrect",
"dc_underwriting_consideration": "Demo|Test|Considered",
"dc_representative_name": "John|Doe|Johnson",
"dc_representative_title": "Mr|Dr|Ms",
"dc_representative_email": "[email protected]|[email protected]|[email protected]",
"dc_representative_phone_number": "54|36|465",
"dc_representative_website": "demo.none|demo.none|demo.none",
"dc_who_received_declinations": "Other Person Office",
"dc_other_person_in_office": "Some Other Person",
"dc_who_performed_diligent_search": 1,

Field Descriptions and Requirements (REQUEST)

📘

Note

Not every field is used in every document. When required information is not provided in the JSON request or if we are unable to determine a field based on available information in InsCipher, the document will be returned with partial information. You will then need to complete the form manually.

Field Title (Header)
(header must be exact on JSON,
bold header is required)
DescriptionField Type / Accepted ValuesRequiredStates Applicable
quote_idID assigned by the broker to identify the quote requesting affidavits forvarchar (255)All
physical_state_codePhysical State for the Insured. Used to identify the documentation applicable to the request.varchar (2)All
transaction_typeUpdated transaction types can be found here.varchar (5)All
policy_effective_dateStart Date for the Policydate (yyyy-mm-dd)All
policy_expiration_dateEnd Date for the Policydate (yyyy-mm-dd) | nullAK|CO|DE|FL|KS|LA |MT|NC|OR|PA|WY
policy_numberPolicy Number for the quotevarchar (50) | null | emptyCA|CO|DE|FL|ID|LA|MA|MS|MT|NV|NM|NY|NC| ND|OR|PA|RI|TX|UT|VA| WA|WV|
rpgIs the policy an RPG policy?

Yes = 1, No = 0
tinyint (1) | nullOR
ecpIs the policy an ECP policy?

Yes = 1, No = 0
tinyint (1) | nullAll
account_written_asUsed to determine the “Producing Broker” information for the Affidavit

DC = Direct Client (pulls the SL Broker Information saved or uses SL Broker Fields)

B = Brokerage (requires the Retail Producer Fields to determine)
varcharAll
transaction_line_of_businessLine of Business to be identified on the affidavit. An array if multiple, with | as a separatorstring | null | emptyAll, except for AL|AR|ID|KS|KY|MD|MS|NV|NJ|NY|ND|OH|TN|TX|UT|VA
non_admitted_insurer_codeInsurance Company to be identified on the affidavit. An array if multiple, with | as a separatorstring | null | emptyCA|DE|FL|MA|MS|MT|NM|NY|NC|OR|RI|TX|VA|WA|WY
syndicate_listLloyd’s Syndicates to be identified on the affidavit. An Array if multiple, with | as a separatorstring | null | emptyMT
policy_limitPolicy Limit to be identified on the affidavit (AKA: Casualty Limit for some states)integer (12) | nullDE|MA|MT|NJ|NC|PA|RI|
property_limitProperty Policy Limit to be identified on the affidavit (Not needed in every state)integer (12) | nullDE|PA
risk_descriptionDescription of Risk to be identified on the affidavitvarchar (255) | null | emptyAK|CA|CO|DE|MA|NJ|NC|PA|WV
windstorm_exclusionIndicator for the windstorm exclusiontinyint (1) | nullFL
sla_transaction_numberTransaction ID for the policyvarchar (255) | null | emptyMA|NJ
premiumPremium amount for the policydecimal (12, 2) | nullCA|DE|FL|MA|MT|NY|NC|OR|RI|WA
inspection_feeCarrier Fee amount for the policydecimal (12, 2) | nullFL|NY|OR
agency_feeBroker Fee amount for the policydecimal (12, 2) | nullFL|MT|NY|OR|WA
sl_taxSL Tax amount for the policydecimal (12, 2) | nullFL|MT|NY
stamping_feeStamping Fee amount for the policydecimal (12, 2) | nullFL|NY
fm_taxFM Tax amount for the policydecimal (12, 2) | nullMT|OR
empa_taxEMPA Tax amount for the policydecimal (12, 2) | nullFL|OR (Wet Marine)
mailing_insured_nameIdentifies the insured name to include on the affidavitvarchar (255) | null | emptyAll
mailing_insured_addressMailing Address for the Insuredvarchar (255) | null | emptyAR|CA|DE|FL|ID|MA|NJ| NC|RI|WA|WV|WY
mailing_insured_address2Mailing Address for the Insuredvarchar (255) | null | emptyAR|CA|DE|FL|ID|MA|NJ| NC|RI|WA|WV|WY
mailing_cityMailing City for the Insuredvarchar (100) | null | emptyAR|CA|DE|FL|ID|MA|NJ| NC|RI|WA|WV|WY
mailing_state_codeMailing State for the Insuredvarchar (2) | null | emptyAR|CA|DE|FL|ID|MA|NJ| NC|RI|WA|WV|WY
mailing_zip_codeMailing Zip Code for the Insuredvarchar (20) | null | emptyAR|CA|DE|FL|ID|MA|NJ| NC|RI|WA|WV|WY
physical_addressPhysical Address for the Insuredvarchar (255) | null | emptyCA|DE|FL|LA|MA|MT|NJ|NC|OH|PA|RI|WV
physical_address2Physical Address for the Insuredvarchar (255) | null | emptyCA|DE|FL|LA|MA|MT|NJ|NC|OH|PA|RI|WV
physical_cityPhysical City for the Insuredvarchar (100) | null | emptyCA|DE|FL|LA|MA|MT|NJ|NC|OH|PA|RI|WV
physical_zip_codePhysical Zip Code for the Insuredvarchar (20) | null | emptyCA|DE|FL|LA|MA|MT|NJ|NC|OH|PA|RI|WV
insured_phonePhone number for the insuredvarchar (100) | null | emptyAR|FL
insured_emailEmail Address for the Insuredvarchar (100) | null | emptyAR
insured_entityIdentifies the type of insured: individual, commercial, governmental, federal, tribal, hospital_alliance, state_approved_tax_entityvarchar (100) | null | emptyTX
insured_signatureUser can pass through insured signature image (png formatted in base64) - see below.string | null | emptyAR|DE|FL|KS|KY|MA|MD|NJ|NY|NC|OH|RI|UT|WV|WY
agent_idsimilar logic to Transaction Import. when provided, pulls relevant information from the following fields for the purpose of completing the affidavitsinteger | nullPreferredAll
license_typeeither AGENCY or PRODUCER (if both are needed, one license type section for AGENCY [name/license number] and one license type section for PRODUCER [name/license number]varchar (50) | null | empty
broker_nameto identify the PRODUCER name (can be for either the AGENCY license, to identify the agent within the agency tied to the filing or for the PRODUCER license)varchar (255) | null | emptyAll, except for AK|KS|KY|MD|NC|TN|UT
license_nameto identify the AGENCY name - aka “Organization Name” (can be for either the PRODUCER license when the Agency Name should be listed or for the AGENCY licensevarchar (255) | null | emptyAll, except for AL|AR|DE|ID|KS|MD|MS|NV|NJ|NM|NC| ND|OH|RI|TN|TX|UT|VA|WV
license_numberfor PRODUCER license typevarchar (50) | null | emptyAll, except for AK|AL|AR|KS|KY|LA|MD|NV|NJ|NM|NC| OH|TN|UT|WA|WY
agency_license_numberfor AGENCY license typevarchar (50) | null | emptyAK|CA|MA|MT|NY|PA| WA|WY
agency_street_addressto identify the address for the agencyvarchar (255) | null | emptyAK|AR|FL|MS|MT|NJ|NM|NY|OR|RI|VA
agency_street_address2to identify the address for the agencyvarchar (255) | null | emptyAK|AR|FL|MS|MT|NJ|NM|NY|OR|RI|VA
agency_cityto identify the city for the agencyvarchar (100) | null | emptyAK|AR|FL|MS|MT|NJ|NM|NY|OR|RI|VA
agency_stateto identify the state for the agencyvarchar (2) | null | emptyAK|AR|FL|MS|MT|NJ|NM|NY|OR|RI|VA
agency_zip_codeto identify the zip code for the agencyvarchar (20) | null | emptyAK|AR|FL|MS|MT|NJ|NM|NY|OR|RI|VA
agency_phoneto identify the phone number for the licensee (AGENCY or PRODUCER)varchar (100) | null | emptyAK|MS|OR
agency_emailto identify the email address for the licensee (AGENCY or PRODUCER)varchar (100) | null | emptyOR
sl_broker_signatureOption 1: User has signature file saved in the license in InsCipher

Option 2: User can pass through insured signature image (png formatted in base64) - see below.
string | null | emptyAll, except for AR|KY|MD|TN|UT|VA
retail_producer_nameRetail Producer Name that should be included on the affidavitvarchar (255) | null | emptyAll, except for AK|AR|KS|KY|MA|MD|MS|NV|NJ|NC|ND|TN|UT|VA
retail_agency_nameRetail Agency Name that should be included on the affidavitvarchar (255) | null | emptyAll, except for AL|DE|ID|KS|MD|MS|NV|NM|NC|ND|OH|RI|TN|TX|UT|VA|WV
retail_addressRetail Agency Addressvarchar (255) | null | emptyAK|AR|FL|NJ|NM|NY|OR
retail_address2Retail Agency Addressvarchar (255) | null | emptyAK|AR|FL|NJ|NM|NY|OR
retail_cityRetail Agency Cityvarchar (100) | null | emptyAK|AR|FL|NJ|NM|NY|OR
retail_stateRetail Agency Statevarchar (2) | null | emptyAK|AR|FL|NJ|NM|NY|OR
retail_zipRetail Agency Zip Codevarchar (20) | null | emptyAK|AR|FL|NJ|NM|NY|OR
retail_producer_licenseRetail Producer License Numbervarchar (50) | null | emptyAll, except for AK|AL|AR|KS|KY|LA|MA|MD|MS|NV|NJ|NM|NC| ND|OH|RI|TN|UT|VA|WA
retail_agency_licenseRetail Agency License Numbervarchar (50) | null | emptyAK|CA|MA|MT|NY|PA|WA|WY
retail_phone_numberRetail Agency Phone Numbervarchar (100) | null | emptyAK|OR
retail_email_addressRetail Producer Email Addressvarchar (100) | null | emptyOR
retail_producer_signatureUser can pass through insured signature image (png formatted in base64) - see below.string | null | emptyAll, except for AR|ID|KY|MD|MS|NV|NM|ND|RI|TN|TX|UT|VA|WA|WY
dc_naicNAIC number of the Declining Carrier(s) to include in the completed affidavitvarchar(255) | null | emptyAll
dc_date_declinedDate declination(s) were received to include in the completed affidavitdate (yyyy-mm-dd) | nullAll
dc_declining_reasonDeclination Reasonvarchar(255) | null | emptyAll, except for AR|CA|KS|KY|LA|MA|MD|MS|NM|NY|NC|ND|OR|PA|RI|TN|VA|WA|
dc_underwriting_considerationUnderwriting Considerationvarchar (255) | null | emptyNY
dc_representative_nameRepresentative Name who declined coveragevarchar (255) | null | emptyAll, except for AL|AR|CO|KS|KY|LA|MA|MD|MS|MT|NM|NY|NC| ND|OR|PA|TN|TX|VA|WA
dc_representative_titleRepresentative Titlevarchar (255) | null | emptyAZ|DC|GA|HI|IL|IN|IA|E|MI|MN|MO|NE|NH|NC|SC|SD|VT|VI|WA
dc_representative_emailRepresentative Email Addressvarchar (100) | null | emptyAZ|CA|DC|FL|GA|HI|IL|IN|IA|E|MI|MN|MO|NE|NH|NC|SC|SD|UT|VT|VI|WA
dc_representative_phone_numberRepresentative Phone Numbervarchar (100) | null | emptyAK|AZ|CA|DE|DC|FL|GA| HI|IL|IN|IA|E|MI|MN|MO|NE|NV|NH|NJ|NC|SC|SD|UT|VT|VI|WA|WY
dc_representative_websiteRepresentative Websitevarchar (255) | null | emptyCA (if no rep. name provided)
dc_who_received_declinationsWho received declinations (SL Broker, Retail Producer, Other Person in Office)

Must be among the options provided in the admin.

It is either a string or a number of the option
varchar (255) | integer | null | emptyCA (to determine if Question 7 is completed on SL2)
dc_other_person_in_officeName of Other Person in Office if identifiedvarchar (255) | null | emptyCA (if answer for dc_who_received_declinations = Other Person in Office)
dc_who_performed_diligent_searchWho Completed Diligent Search

Surplus Lines Broker = 1

Retail Producer = 2
tinyint (1) | nullCA (to determine if SL Broker/Transactor or Retail Producer should be used to answer Question 1 on SL2)

How Do Generic Lines of Business Import Codes Work?

InsCipher maintains a list of active coverage lists by state. To simplify the import process, we do not expect you to determine what these codes are on import. Instead, we have created Generic Import codes for you to use which can be found here. The generic codes (GEN-XXXX) are listed with the orange headers on the left side of the spreadsheet. To the right, you will see state-specific codes listed with blue headers. If you import using the generic codes, then our system will automatically associate the transaction to the proper state-specific line of business upon import according to the mapping.

For the purposes of this API, when Generic Lines of Business are provided, InsCipher will determine the appropriate state code to help determine document applicability in that state.

📘

Note

It is your responsibility to review the mapping and to determine if there are additional generic codes that need to be mapped or altered.

Declining Carrier Defaults by Coverage Code

To simplify the selection of Declining Carriers when submitting via API, the broker can use Declining Carrier Defaults to identify common declining carriers used per state and for specific Lines of Business. When the agent_id is provided and declining carrier defaults are saved to the agent_id, declining carrier information is not required in the API.

In general, when no information is provided in the API to complete a document completely, InsCipher will generate a partially completed document based on the information provided and the broker can complete any missing information manually.

Using Base64 code for your png image file

To pass through a png signature to be used on diligent forms, you will need to convert your png file to Base64 code. You can use a converter program online to obtain the code, such as base64.guru or others.

Example of Base64 code for an Insured Signature

"insured_signature": "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",

Response Format

The API automatically returns a response in JSON with status and a list of all applicable/generated documents (if the request is successful).

Success response example:

{
  "success": true,
  "documents": [
  {
       "status": "completed",
       "type": "generated",
       "title": "AK - Diligent Effort Form",
       "url": "https://surpluslines.inscipher.com/pdf/doc/aff/download/192/2/8bebf5bb786b69c3b878b562aa66c470"
  },
  {
       "status": "partially_completed",
       "type": "generated",
       "title": "AK - Diligent Effort Form 2",
       "url": "https://surpluslines.inscipher.com/pdf/doc/aff/download/192/3/7e55cfc8d233a7166adba81886b89895",
       "warnings": {
          "physical_address": "Field \"Address Line\" (transaction.physical_address) not provided or provided empty. The value might be optional. Complete document manually."
       }
  },
  {
       "status": "complete_manually",
       "type": "blank_template",
       "title": "Policy Holder Notice",
       "url": "https://surpluslines.inscipher.com/doc/link/dcccf5f063963e7fdf2c9f07e1596fb6/3026579"
       },
  ]
}

If the request is not successful, then response 422 (Unprocessable Content) with errors is returned:

Error response example #1:

{
     "message": "Handling Request failed: request has validation errors.",
     "errors": {
        "physical_state_code": "Physical State Code is required.",
        "transaction_type": "Transaction Type is required.",
        "policy_effective_date": "Policy Effective Date is required."
     },  "metadata": [] 
}

If the request is in bad format/not acceptable/not valid, then response 422 (Unprocessable Content) with errors is returned:

Unprocessable request response example #2 (Invalid JSON):

 {
     "message": "Invalid json!",
     "errors": [
        "Syntax error"
     ],
     "metadata": [] 
}

Response Field Descriptions

Field NameField Description
successtrue = successful request

false = not successful request
messageIn case the request is not successful (success = false), the message field is used to provide a general error message.
documentsA list of generated documents; Each document has its own properties:

status:

- completed (when a document is generated and completed)

- partially_completed (when a document is generated and not completed - there are warnings/missing data)

- complete_manual (applicable for blank template documents, when the user should complete it manually in every case)type:

- generated - document that is generated and filled from the Affidavit data

- blank_template - blank template documenttitle: document titleurl: link to download document (accessible for 1 minute)warnings: in case some data is missing or not valid, a list of warnings is returned; this list is formatted as an array of key → value; where key is the best guess of the field that is missing/not valid in the request, and value is a warning message; if there are multiple warnings with related field then those warnings are provided as an array under that field;
warningsIn case the request is successful but there are warnings (not critical errors), then those warnings are listed in this field as an array; this list is formatted as an array of key → value; where key is the best guess of the field that is missing/not valid in the request, and value is a warning message;
errorsIn case the request is NOT successful and there are known errors, then those errors are listed in this field as an array; this list is formatted as an array of key → value; where key is the best guess of the field that is missing/not valid in the request, and value is an error message;