{
  "openapi" : "3.0.0",
  "info" : {
    "title" : "LexisNexis C.L.U.E Service - BBG",
    "version" : "1.3.0"
  },
  "servers" : [ {
    "url" : "/api"
  } ],
  "security" : [ {
    "global" : [ "groups" ]
  } ],
  "tags" : [ {
    "name" : "/clue",
    "description" : "CLUE REST service"
  } ],
  "paths" : {
    "/clue/requestReport" : {
      "post" : {
        "tags" : [ "/clue" ],
        "summary" : "Requests an  CLUE Report",
        "operationId" : "requestReport",
        "requestBody" : {
          "description" : "",
          "content" : {
            "application/json" : {
              "schema" : {
                "$ref" : "#/components/schemas/Request"
              }
            }
          },
          "required" : true
        },
        "responses" : {
          "200" : {
            "description" : "OK",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ClueResponse"
                }
              }
            }
          },
          "400" : {
            "description" : "Bad Request",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResponseMessage"
                }
              }
            }
          },
          "401" : {
            "description" : "Unauthorized",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResponseMessage"
                }
              }
            }
          },
          "403" : {
            "description" : "Forbidden",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResponseMessage"
                }
              }
            }
          },
          "404" : {
            "description" : "Not Found",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResponseMessage"
                }
              }
            }
          },
          "408" : {
            "description" : "Request Timeout",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResponseMessage"
                }
              }
            }
          },
          "500" : {
            "description" : "Internal Server Error",
            "content" : {
              "application/json" : {
                "schema" : {
                  "$ref" : "#/components/schemas/ResponseMessage"
                }
              }
            }
          }
        }
      }
    }
  },
  "components" : {
    "schemas" : {
      "LNClientIdentification" : {
        "type" : "object",
        "properties" : {
          "userId" : {
            "type" : "string"
          },
          "terminalId" : {
            "type" : "string"
          }
        }
      },
      "LNTransactionDetails" : {
        "type" : "object",
        "properties" : {
          "ruleplanId" : {
            "type" : "integer",
            "format" : "int32"
          },
          "maxWaitSeconds" : {
            "type" : "integer",
            "format" : "int32"
          },
          "inquiryVersion" : {
            "type" : "string"
          },
          "sidexInfo" : {
            "$ref" : "#/components/schemas/LNSidexInfo"
          },
          "dateTimeOrdered" : {
            "type" : "string",
            "format" : "date-time"
          },
          "dateTimeReceived" : {
            "type" : "string",
            "format" : "date-time"
          },
          "dateTimeCompleted" : {
            "type" : "string",
            "format" : "date-time"
          },
          "quoteBacks" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/LNNameValuePair"
            }
          }
        }
      },
      "ClaimPayment" : {
        "type" : "object",
        "properties" : {
          "claimType" : {
            "type" : "string",
            "enum" : [ "BODILY_INJURY", "COLLISION", "COMPREHENSIVE", "GLASS", "MEDICAL_EXPENSE", "MEDICAL_PAYMENT", "OTHER", "PHYSICAL_PROPERTY_DAMAGE", "PERSONAL_INJURY_PROTECTION", "RENTAL_REIMBURSEMENT", "SPOUSAL_LIABILITY", "TOWING_AND_LABOR", "UNINSURED_MOTORIST", "UNDERINSURED_MOTORIST" ]
          },
          "claimDisposition" : {
            "type" : "string",
            "enum" : [ "OPEN", "CLOSED", "SUBROGATION", "UNDER_DEDUCTIBLE", "PERIL_NOT_COVERED", "WITHDRAWN" ]
          },
          "claimAmount" : {
            "type" : "string"
          },
          "causeOfLoss" : {
            "type" : "string"
          }
        }
      },
      "Mortgage" : {
        "type" : "object",
        "properties" : {
          "companyName" : {
            "type" : "string"
          },
          "loanNumber" : {
            "type" : "string"
          }
        }
      },
      "Request" : {
        "type" : "object",
        "properties" : {
          "clientIdentification" : {
            "$ref" : "#/components/schemas/LNClientIdentification"
          },
          "transactionDetails" : {
            "$ref" : "#/components/schemas/LNTransactionDetails"
          },
          "requesterInformation" : {
            "$ref" : "#/components/schemas/LNRequesterInformation"
          },
          "configurationId" : {
            "type" : "string"
          },
          "vehicles" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Vehicle"
            }
          },
          "requestType" : {
            "type" : "string",
            "enum" : [ "Auto", "Property" ]
          },
          "contacts" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Subject"
            }
          }
        }
      },
      "ConsumerStatement" : {
        "type" : "object",
        "properties" : {
          "text" : {
            "type" : "string"
          },
          "statementFiledDate" : {
            "type" : "string",
            "format" : "date"
          }
        }
      },
      "LNNameValuePair" : {
        "type" : "object",
        "properties" : {
          "name" : {
            "type" : "string"
          },
          "value" : {
            "type" : "string"
          }
        }
      },
      "LNEndUserInfo" : {
        "type" : "object",
        "properties" : {
          "companyName" : {
            "type" : "string"
          },
          "streetAddress1" : {
            "type" : "string"
          },
          "city" : {
            "type" : "string"
          },
          "state" : {
            "type" : "string"
          },
          "zip5" : {
            "type" : "string"
          }
        }
      },
      "Report" : {
        "type" : "object",
        "properties" : {
          "messages" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Message"
            }
          },
          "request" : {
            "$ref" : "#/components/schemas/Request"
          },
          "claims" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Claim"
            }
          },
          "claimReportedStatus" : {
            "type" : "string"
          },
          "reportingStatus" : {
            "type" : "string"
          },
          "referenceNumber" : {
            "type" : "string"
          },
          "consumerStatements" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ConsumerStatement"
            }
          }
        }
      },
      "ClueResponse" : {
        "type" : "object",
        "properties" : {
          "reports" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Report"
            }
          }
        }
      },
      "LNSidexInfo" : {
        "type" : "object",
        "properties" : {
          "sourceNode" : {
            "type" : "string"
          },
          "destinationNode" : {
            "type" : "string"
          },
          "returnNode" : {
            "type" : "string"
          }
        }
      },
      "LNRequesterInformation" : {
        "type" : "object",
        "properties" : {
          "classification" : {
            "type" : "string"
          },
          "name" : {
            "type" : "string"
          },
          "accountNumber" : {
            "type" : "string"
          },
          "carrierId" : {
            "type" : "string"
          },
          "carrierAgencyAcctNo" : {
            "type" : "string"
          },
          "billingCode" : {
            "type" : "string"
          },
          "lineOfBusiness" : {
            "type" : "string",
            "enum" : [ "AUTO", "PERSONAL_AUTO", "PERSONAL_PROPERTY", "LIFE", "COMMERCIAL" ]
          },
          "referenceCode" : {
            "type" : "string"
          },
          "endUser" : {
            "$ref" : "#/components/schemas/LNEndUserInfo"
          },
          "customerOrgInquiryIDs" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/LNNameValuePair"
            }
          },
          "clientIdentification" : {
            "$ref" : "#/components/schemas/LNClientIdentification"
          },
          "queryId" : {
            "type" : "string"
          },
          "glbPurpose" : {
            "type" : "string"
          },
          "dlPurpose" : {
            "type" : "string"
          }
        }
      },
      "AutoClaimData" : {
        "type" : "object",
        "properties" : {
          "vehicle" : {
            "$ref" : "#/components/schemas/Vehicle"
          },
          "atFault" : {
            "type" : "string",
            "enum" : [ "AT_FAULT", "NOT_AT_FAULT", "FAULT_UNDETERMINED", "PARTIAL_FAULT", "CATASTROPHE_RELATED", "CALIFORNIA_AT_FAULT_BODILY_INJURY", "CALIFORNIA_AT_FAULT_PROPERTY_DAMAGE" ]
          },
          "reportType" : {
            "type" : "string",
            "enum" : [ "VEHICLE_OPERATOR", "POLICY_HOLDER", "POSSIBLE_RELATED_CLAIMS" ]
          },
          "claimAssociationEnum" : {
            "type" : "string",
            "enum" : [ "INDICATES_THE_POLICYHOLDER_WAS_THE_PERSON_MATCHED", "INDICATES_THE_VEHICLE_OPERATOR_WAS_THE_PERSON_MATCHED" ]
          }
        }
      },
      "DriversLicense" : {
        "type" : "object",
        "properties" : {
          "licenseNumber" : {
            "type" : "string"
          },
          "state" : {
            "type" : "string"
          }
        }
      },
      "Vehicle" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "year" : {
            "type" : "integer",
            "format" : "int32"
          },
          "make" : {
            "type" : "string"
          },
          "model" : {
            "type" : "string"
          },
          "vin" : {
            "type" : "string"
          }
        }
      },
      "LNAddress" : {
        "type" : "object",
        "properties" : {
          "addressLine1" : {
            "type" : "string"
          },
          "addressLine2" : {
            "type" : "string"
          },
          "addressLine3" : {
            "type" : "string"
          },
          "city" : {
            "type" : "string"
          },
          "county" : {
            "type" : "string"
          },
          "state" : {
            "type" : "string"
          },
          "postalCode" : {
            "type" : "string"
          },
          "country" : {
            "type" : "string"
          },
          "yearsAtAddress" : {
            "type" : "integer",
            "format" : "int32"
          },
          "monthsAtAddress" : {
            "type" : "integer",
            "format" : "int32"
          },
          "dateFirstAtAddress" : {
            "type" : "string",
            "format" : "date"
          },
          "dateLastAtAddress" : {
            "type" : "string",
            "format" : "date"
          },
          "streetNumber" : {
            "type" : "string"
          },
          "streetName" : {
            "type" : "string"
          },
          "unitNumber" : {
            "type" : "string"
          },
          "stateCityZip" : {
            "type" : "string"
          },
          "streetPostDirection" : {
            "type" : "string"
          },
          "streetPreDirection" : {
            "type" : "string"
          },
          "streetSuffix" : {
            "type" : "string"
          },
          "unitDesignation" : {
            "type" : "string"
          }
        }
      },
      "Message" : {
        "type" : "object",
        "properties" : {
          "applicationStatus" : {
            "type" : "string"
          },
          "classification" : {
            "type" : "string"
          },
          "code" : {
            "type" : "string"
          },
          "failureStatus" : {
            "type" : "string"
          },
          "messageId" : {
            "type" : "string"
          },
          "message" : {
            "type" : "string"
          },
          "type" : {
            "type" : "string"
          },
          "recordNumber" : {
            "type" : "integer",
            "format" : "int32"
          },
          "sequenceNumber" : {
            "type" : "integer",
            "format" : "int32"
          },
          "unitNumber" : {
            "type" : "integer",
            "format" : "int32"
          }
        }
      },
      "Claim" : {
        "type" : "object",
        "properties" : {
          "subjects" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Subject"
            }
          },
          "claimDate" : {
            "type" : "string",
            "format" : "date"
          },
          "claimNumber" : {
            "type" : "string"
          },
          "autoClaimData" : {
            "$ref" : "#/components/schemas/AutoClaimData"
          },
          "propertyClaimData" : {
            "$ref" : "#/components/schemas/PropertyClaimData"
          },
          "claimsHistoryType" : {
            "type" : "string",
            "enum" : [ "SUBJECT_SECTION", "VEHICLE_SECTION", "POSSIBLE_RELATED_SECTION", "AGENT_SUMMARY_SECTION", "AGENT_SECTION", "RISK_SECTION", "INSURED_SECTION" ]
          },
          "claimPayments" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ClaimPayment"
            }
          },
          "disputeClearanceDate" : {
            "type" : "string",
            "format" : "date"
          },
          "contributingCompany" : {
            "type" : "string"
          },
          "firstPaymentDate" : {
            "type" : "string",
            "format" : "date"
          },
          "policyCompany" : {
            "type" : "string"
          },
          "policyNumber" : {
            "type" : "string"
          },
          "policyType" : {
            "type" : "string",
            "enum" : [ "PERSONAL_AUTO", "MOTORCYCLE", "MOTORHOME", "HOMEOWNERS", "AUTO", "BOAT_OWNERS", "CONDOMINIUM", "FIRE", "FLOOD", "HAIL", "INLAND_MARINE", "MOBILE_HOME", "QUAKE", "RANCH_FARM", "TENANT", "UMBRELLA", "WATERCRAFT", "OTHER" ]
          },
          "getaMBestNumber" : {
            "type" : "string"
          },
          "scopeOfClaim" : {
            "type" : "string",
            "enum" : [ "FULL_SCOPE", "LIMITED_SCOPE" ]
          },
          "catastropheIndicator" : {
            "type" : "string",
            "enum" : [ "CATASTROPHE_RELATED", "NOT_CATASTROPHE_RELATED", "UNKNOWN_DEFAULT" ]
          },
          "consumerStatements" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ConsumerStatement"
            }
          },
          "claimFileNumber" : {
            "type" : "string"
          }
        }
      },
      "PropertyClaimData" : {
        "type" : "object",
        "properties" : {
          "locationOfLoss" : {
            "type" : "string",
            "enum" : [ "ON_PREMISES", "OFF_PREMISES", "UNKNOWN" ]
          },
          "propertyType" : {
            "type" : "string",
            "enum" : [ "RISK", "SUBJECT" ]
          },
          "disposition" : {
            "type" : "string",
            "enum" : [ "OPEN", "CLOSED", "SUBROGATION", "UNDER_DEDUCTIBLE", "PERIL_NOT_COVERED", "WITHDRAWN" ]
          },
          "address" : {
            "$ref" : "#/components/schemas/LNAddress"
          }
        }
      },
      "ResponseMessage" : {
        "type" : "object",
        "properties" : {
          "timestamp" : {
            "type" : "integer",
            "format" : "int64"
          },
          "endpoint" : {
            "type" : "string"
          },
          "routeId" : {
            "type" : "string"
          },
          "message" : {
            "type" : "string"
          },
          "responseBody" : {
            "type" : "string"
          },
          "responseCode" : {
            "type" : "integer",
            "format" : "int32"
          },
          "responseKey" : {
            "type" : "string"
          }
        }
      },
      "Subject" : {
        "type" : "object",
        "properties" : {
          "id" : {
            "type" : "string"
          },
          "prefix" : {
            "type" : "string"
          },
          "firstName" : {
            "type" : "string"
          },
          "middleName" : {
            "type" : "string"
          },
          "lastName" : {
            "type" : "string"
          },
          "suffix" : {
            "type" : "string"
          },
          "ssn" : {
            "type" : "string"
          },
          "dateOfBirth" : {
            "type" : "string",
            "format" : "date"
          },
          "age" : {
            "type" : "integer",
            "format" : "int32"
          },
          "primaryAddress" : {
            "$ref" : "#/components/schemas/LNAddress"
          },
          "mailingAddress" : {
            "$ref" : "#/components/schemas/LNAddress"
          },
          "formerAddresses" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/LNAddress"
            }
          },
          "driversLicenses" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/DriversLicense"
            }
          },
          "classification" : {
            "type" : "string",
            "enum" : [ "REPORT_SUBJECT", "REFERENCE", "EMPLOYEE", "DEPENDENT", "SPOUSE", "CLAIMANT_POLICYHOLDER", "CLAIMANT_INSURED", "CLAIMANT_THIRD_PARTY", "ASSOCIATED_POLICY", "CLAIMANT_VEHICLE_OPERATOR", "CLAIMANT_SPOUSE", "CLAIMANT_DEPENDENT", "CLAIMANT_OTHER", "ALIAS_A_K_A", "FORMER_NAME", "OTHER", "POLICY_OWNER", "CLAIMANT", "INSURED", "POLICY_HOLDER", "VEHICLE_OPERATOR", "SELECTED_SUBJECT" ]
          },
          "gender" : {
            "type" : "string"
          },
          "accountContactId" : {
            "type" : "string"
          },
          "telephoneNumber" : {
            "type" : "string"
          },
          "mortgages" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/Mortgage"
            }
          },
          "consumerStatements" : {
            "type" : "array",
            "items" : {
              "$ref" : "#/components/schemas/ConsumerStatement"
            }
          }
        }
      }
    },
    "securitySchemes" : {
      "global" : {
        "type" : "oauth2",
        "flows" : {
          "authorizationCode" : {
            "authorizationUrl" : "https://guidewire-hub.okta.com/oauth2/aus11vix3uKEpIfSI357/v1/authorize",
            "tokenUrl" : "https://guidewire-hub.okta.com/oauth2/aus11vix3uKEpIfSI357/v1/token",
            "scopes" : {
              "groups" : "Required scopes for Camel REST APIs"
            }
          }
        }
      }
    }
  }
}