/* tslint:disable */ /* eslint-disable */ /** * Emil PublicAPI * The Emil Public API description * * The version of the OpenAPI document: 1.0 * Contact: kontakt@emil.de * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { CreateAccountRequestDto } from './create-account-request-dto'; import { CreateBankAccountRequestDto } from './create-bank-account-request-dto'; import { CreatePaymentMethodRequestDto } from './create-payment-method-request-dto'; import { LinkLeadPartnerRequestDto } from './link-lead-partner-request-dto'; import { PolicyObjectRequestDto } from './policy-object-request-dto'; import { PremiumOverrideRequestDto } from './premium-override-request-dto'; import { UploadedDocumentDto } from './uploaded-document-dto'; /** * * @export * @interface CreateLeadRequestDto */ export interface CreateLeadRequestDto { /** * The lead code is used in cases where the lead has been initiated before the lead creation. * @type {string} * @memberof CreateLeadRequestDto */ 'code'?: string; /** * The product version id of the product version to be used for the lead. The product version id will be validated if the \'validate\' flag is set to true. * @type {number} * @memberof CreateLeadRequestDto */ 'productVersionId'?: number; /** * Unique identifier of the product that this object belongs to. * @type {string} * @memberof CreateLeadRequestDto */ 'productCode'?: string; /** * A slug is a human-readable, unique identifier, used to identify a resource instead of a less human-readable identifier like an id. * @type {string} * @memberof CreateLeadRequestDto */ 'productSlug'?: string; /** * Account object. The create lead request should either contain accountCode or account. The account content will be validated if the \'validate\' flag is set to true. an empty object is required if \'validate flag is set to false. * @type {CreateAccountRequestDto} * @memberof CreateLeadRequestDto */ 'account'?: CreateAccountRequestDto; /** * The account code is used in cases where the account has been created before the lead. The create lead request should include either the \'accountCode\' or \'account\'. The account code will be validated if the \'validate\' flag is set to true. * @type {string} * @memberof CreateLeadRequestDto */ 'accountCode'?: string; /** * The policy objects contains necessary information to create a policy. The Policy objects array will be validated if the \'validate\' flag is set to true * @type {Array} * @memberof CreateLeadRequestDto */ 'policyObjects'?: Array; /** * Bank account details, to be used for direct debit payments, the created bank account will be attached to the lead for later use, such as paying claims. The bank account content will be validated if the \'validate\' flag is set to true. * @type {CreateBankAccountRequestDto} * @memberof CreateLeadRequestDto */ 'bankAccount'?: CreateBankAccountRequestDto; /** * Optional custom data for the lead. This field is useful for edge cases where the lead requires additional data for the risk carrier, such as creating an application in the risk carrier platform or performing a premium calculation. The custom data should include three main entities: \'data\', \'provider\', and \'productCode\'. The \'data\' entity contains information used in the risk carrier platform, the \'provider\' field contains the name of the provider (usually the risk carrier\'s name), the provider must be supported in EMIL, The \'productCode\' field contains the product code in EMIL * @type {object} * @memberof CreateLeadRequestDto */ 'customData'?: object; /** * Used to pass pre-uploaded documents to the lead. By providing the codes of the uploaded documents, they will be attached to the lead. The uploaded document content will be validated if the \'validate\' flag is set to true. * @type {UploadedDocumentDto} * @memberof CreateLeadRequestDto */ 'uploadedDocument'?: UploadedDocumentDto; /** * Lead status. Default values are \"created\", \"approved\" and \"declined\". However, those can be extended using /lead-statuses endpoint from insuranceservice. * @type {string} * @memberof CreateLeadRequestDto */ 'status'?: string; /** * Premium Override is utilized to override the premium calculation. The premium formulas will be disregarded when this object is present. The premium override content will be validated if the \'validate\' flag is set to true. * @type {PremiumOverrideRequestDto} * @memberof CreateLeadRequestDto */ 'premiumOverride'?: PremiumOverrideRequestDto; /** * * @type {CreatePaymentMethodRequestDto} * @memberof CreateLeadRequestDto */ 'paymentMethod'?: CreatePaymentMethodRequestDto; /** * The validation indicator, with a default value of true, serves as a toggle. When set to false, it allows the bypassing of validation—a useful option for saving leads for later processing. This feature provides flexibility by enabling users to choose whether to enforce validation checks during the current stage or defer them for a subsequent time. * @type {boolean} * @memberof CreateLeadRequestDto */ 'validate'?: boolean; /** * Optional partner object contains necessary information to link a partner to the policy. The partner content will be validated if the \'validate\' flag is set to true. * @type {LinkLeadPartnerRequestDto} * @memberof CreateLeadRequestDto */ 'partner'?: LinkLeadPartnerRequestDto; }