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.

Fields Documentation
Field Name Description Field Type Required States Applicable
quote_id ID assigned by the broker to identify the quote requesting affidavits for varchar (255) All
physical_state_code Physical State for the Insured. Used to identify the documentation applicable to the request. varchar (2) All
transaction_type Updated transaction types can be found here. varchar (5) All
policy_effective_date Start Date for the Policy date (yyyy-mm-dd) All
policy_expiration_date End Date for the Policy date (yyyy-mm-dd) | null AK|CO|DE|FL|KS|LA |MT|NC|OR|PA|WY
policy_number Policy Number for the quote varchar (50) | null | empty CA|CO|DE|FL|ID|LA|MA|MS|MT|NV|NM|NY|NC|ND|OR|PA|RI|TX|UT|VA|WA|WV
rpg Is the policy an RPG policy?

Yes = 1, No = 0
tinyint (1) | null OR
ecp Is the policy an ECP policy?

Yes = 1, No = 0
tinyint (1) | null All
account_written_as Used 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)
varchar All
transaction_line_of_business Line of Business to be identified on the affidavit. An array if multiple, with | as a separator string | null | empty All, except for AL|AR|ID|KS|KY|MD|MS|NV|NJ|NY|ND|OH|TN|TX|UT|VA
non_admitted_insurer_code Insurance Company to be identified on the affidavit. An array if multiple, with | as a separator string | null | empty CA|DE|FL|MA|MS|MT|NM|NY|NC|OR|RI|TX|VA|WA|WY
syndicate_list Lloyd's Syndicates to be identified on the affidavit. An Array if multiple, with | as a separator string | null | empty MT
policy_limit Policy Limit to be identified on the affidavit (AKA: Casualty Limit for some states) integer (12) | null DE|MA|MT|NJ|NC|PA|RI
property_limit Property Policy Limit to be identified on the affidavit (Not needed in every state) integer (12) | null DE|PA
risk_description Description of Risk to be identified on the affidavit varchar (255) | null | empty AK|CA|CO|DE|MA|NJ|NC|PA|WV
windstorm_exclusion Indicator for the windstorm exclusion tinyint (1) | null FL
sla_transaction_number Transaction ID for the policy varchar (255) | null | empty MA|NJ
premium Premium amount for the policy decimal (12, 2) | null CA|DE|FL|MA|MT|NY|NC|OR|RI|WA
inspection_fee Carrier Fee amount for the policy decimal (12, 2) | null FL|NY|OR
agency_fee Broker Fee amount for the policy decimal (12, 2) | null FL|MT|NY|OR|WA
sl_tax SL Tax amount for the policy decimal (12, 2) | null FL|MT|NY
stamping_fee Stamping Fee amount for the policy decimal (12, 2) | null FL|NY
fm_tax FM Tax amount for the policy decimal (12, 2) | null MT|OR
empa_tax EMPA Tax amount for the policy decimal (12, 2) | null FL|OR (Wet Marine)
mailing_insured_name Identifies the insured name to include on the affidavit varchar (255) | null | empty All
mailing_insured_address Mailing Address for the Insured varchar (255) | null | empty AR|CA|DE|FL|ID|MA|NJ|NC|RI|WA|WV|WY
mailing_insured_address2 Mailing Address for the Insured varchar (255) | null | empty AR|CA|DE|FL|ID|MA|NJ|NC|RI|WA|WV|WY
mailing_city Mailing City for the Insured varchar (100) | null | empty AR|CA|DE|FL|ID|MA|NJ|NC|RI|WA|WV|WY
mailing_state_code Mailing State for the Insured varchar (2) | null | empty AR|CA|DE|FL|ID|MA|NJ|NC|RI|WA|WV|WY
mailing_zip_code Mailing Zip Code for the Insured varchar (20) | null | empty AR|CA|DE|FL|ID|MA|NJ|NC|RI|WA|WV|WY
physical_address Physical Address for the Insured varchar (255) | null | empty CA|DE|FL|LA|MA|MT|NJ|NC|OH|PA|RI|WV
physical_address2 Physical Address for the Insured varchar (255) | null | empty CA|DE|FL|LA|MA|MT|NJ|NC|OH|PA|RI|WV
physical_city Physical City for the Insured varchar (100) | null | empty CA|DE|FL|LA|MA|MT|NJ|NC|OH|PA|RI|WV
physical_zip_code Physical Zip Code for the Insured varchar (20) | null | empty CA|DE|FL|LA|MA|MT|NJ|NC|OH|PA|RI|WV
insured_phone Phone number for the insured varchar (100) | null | empty AR|FL
insured_email Email Address for the Insured varchar (100) | null | empty AR
insured_entity Identifies the type of insured entity. This field is used to determine tax exemption status in certain states. Use the Entity Type as the value for this field.
Entity Type Description
individual Used to indicate the insured / policy is Personal Lines.
commercial Used to indicate the insured / policy is Commercial Lines.
varchar(255) TX
insured_signature User can pass through insured signature image (png formatted in base64) - see below. string | null | empty AR|DE|FL|KS|KY|MA|MD|NJ|NY|NC|OH|RI|UT|WV|WY
agent_id similar logic to Transaction Import. when provided, pulls relevant information from the following fields for the purpose of completing the affidavits integer | null Preferred All
license_type either 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_name to 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 | empty All, except for AK|KS|KY|MD|NC|TN|UT
license_name to 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 license varchar (255) | null | empty All, except for AL|AR|DE|ID|KS|MD|MS|NV|NJ|NM|NC|ND|OH|RI|TN|TX|UT|VA|WV
license_number for PRODUCER license type varchar (50) | null | empty All, except for AK|AL|AR|KS|KY|LA|MD|NV|NJ|NM|NC|OH|TN|UT|WA|WY
agency_license_number for AGENCY license type varchar (50) | null | empty AK|CA|MA|MT|NY|PA|WA|WY
agency_street_address to identify the address for the agency varchar (255) | null | empty AK|AR|FL|MS|MT|NJ|NM|NY|OR|RI|VA
agency_street_address2 to identify the address for the agency varchar (255) | null | empty AK|AR|FL|MS|MT|NJ|NM|NY|OR|RI|VA
agency_city to identify the city for the agency varchar (100) | null | empty AK|AR|FL|MS|MT|NJ|NM|NY|OR|RI|VA
agency_state to identify the state for the agency varchar (2) | null | empty AK|AR|FL|MS|MT|NJ|NM|NY|OR|RI|VA
agency_zip_code to identify the zip code for the agency varchar (20) | null | empty AK|AR|FL|MS|MT|NJ|NM|NY|OR|RI|VA
agency_phone to identify the phone number for the licensee (AGENCY or PRODUCER) varchar (100) | null | empty AK|MS|OR
agency_email to identify the email address for the licensee (AGENCY or PRODUCER) varchar (100) | null | empty OR
sl_broker_signature Option 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 | empty All, except for AR|KY|MD|TN|UT|VA
retail_producer_name Retail Producer Name that should be included on the affidavit varchar (255) | null | empty All, except for AK|AR|KS|KY|MA|MD|MS|NV|NJ|NC|ND|TN|UT|VA
retail_agency_name Retail Agency Name that should be included on the affidavit varchar (255) | null | empty All, except for AL|DE|ID|KS|MD|MS|NV|NM|NC|ND|OH|RI|TN|TX|UT|VA|WV
retail_address Retail Agency Address varchar (255) | null | empty AK|AR|FL|NJ|NM|NY|OR
retail_address2 Retail Agency Address varchar (255) | null | empty AK|AR|FL|NJ|NM|NY|OR
retail_city Retail Agency City varchar (100) | null | empty AK|AR|FL|NJ|NM|NY|OR
retail_state Retail Agency State varchar (2) | null | empty AK|AR|FL|NJ|NM|NY|OR
retail_zip Retail Agency Zip Code varchar (20) | null | empty AK|AR|FL|NJ|NM|NY|OR
retail_producer_license Retail Producer License Number varchar (50) | null | empty All, except for AK|AL|AR|KS|KY|LA|MA|MD|MS|NV|NJ|NM|NC|ND|OH|RI|TN|UT|VA|WA
retail_agency_license Retail Agency License Number varchar (50) | null | empty AK|CA|MA|MT|NY|PA|WA|WY
retail_phone_number Retail Agency Phone Number varchar (100) | null | empty AK|OR
retail_email_address Retail Producer Email Address varchar (100) | null | empty OR
retail_producer_signature User can pass through insured signature image (png formatted in base64) - see below. string | null | empty All, except for AR|ID|KY|MD|MS|NV|NM|ND|RI|TN|TX|UT|VA|WA|WY
dc_naic NAIC number of the Declining Carrier(s) to include in the completed affidavit varchar(255) | null | empty All
dc_date_declined Date declination(s) were received to include in the completed affidavit date (yyyy-mm-dd) | null All
dc_declining_reason Declination Reason varchar(255) | null | empty All, except for AR|CA|KS|KY|LA|MA|MD|MS|NM|NY|NC|ND|OR|PA|RI|TN|VA|WA
dc_underwriting_consideration Underwriting Consideration varchar (255) | null | empty NY
dc_representative_name Representative Name who declined coverage varchar (255) | null | empty All, except for AL|AR|CO|KS|KY|LA|MA|MD|MS|MT|NM|NY|NC|ND|OR|PA|TN|TX|VA|WA
dc_representative_title Representative Title varchar (255) | null | empty AZ|DC|GA|HI|IL|IN|IA|E|MI|MN|MO|NE|NH|NC|SC|SD|VT|VI|WA
dc_representative_email Representative Email Address varchar (100) | null | empty AZ|CA|DC|FL|GA|HI|IL|IN|IA|E|MI|MN|MO|NE|NH|NC|SC|SD|UT|VT|VI|WA
dc_representative_phone_number Representative Phone Number varchar (100) | null | empty AK|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_website Representative Website varchar (255) | null | empty CA (if no rep. name provided)
dc_who_received_declinations Who 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 | empty CA (to determine if Question 7 is completed on SL2)
dc_other_person_in_office Name of Other Person in Office if identified varchar (255) | null | empty CA (if answer for dc_who_received_declinations = Other Person in Office)
dc_who_performed_diligent_search Who Completed Diligent Search

Surplus Lines Broker = 1

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

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 Name

Field Description

success

true = successful request

false = not successful request

message

In case the request is not successful (success = false), the message field is used to provide a general error message.

documents

A 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 keyis 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;

warnings

In 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 keyis the best guess of the field that is missing/not valid in the request, and valueis a warning message;

errors

In 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 keyis the best guess of the field that is missing/not valid in the request, and value is an error message;