> ## Documentation Index
> Fetch the complete documentation index at: https://docs.coverwhale.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Get A Quote

> Submit a full quote request with complete submission details



## OpenAPI

````yaml post /quote
openapi: 3.0.0
info:
  title: Cover Whale API V1
  contact:
    name: Cover Whale API Team
  version: '1.0'
servers:
  - url: https://api.coverwhale.dev/v1
security:
  - AccessToken: []
tags:
  - name: Authentication
    description: Authenticating & Interacting with the API
paths:
  /quote:
    post:
      tags:
        - Quoting
      summary: Get A Quote
      description: Submit a full quote request with complete submission details
      operationId: getQuote
      parameters:
        - name: Content-Type
          in: header
          required: true
          schema:
            type: string
          example: application/json
        - name: Accept
          in: header
          required: true
          schema:
            type: string
          example: application/json
        - name: AccessToken
          in: header
          required: true
          schema:
            type: string
          example: eyJraWQiOiJnRk5oTTh2RnRKWXVDVXU1S........
      requestBody:
        required: true
        content:
          application/json:
            schema:
              required:
                - insuredInformation
                - mailingAddress
                - garageAddress
              properties:
                coverage:
                  properties:
                    requestAl:
                      description: Auto Liability
                      type: string
                      default: 'Y'
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'Y'
                    optAlPip:
                      description: Opt into PIP if AL requested (only in MN, NJ, PA, TX).
                      type: string
                      default: 'N'
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    optAlUm:
                      description: >-
                        Opt into UM/UIM if AL requested (only in AL, AZ, CA, GA,
                        IN, MN, MS, NJ, OH, OK, PA, TN, TX, VA)
                      type: string
                      default: 'N'
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    requestApd:
                      description: Automobile Physical Damage
                      type: string
                      default: 'Y'
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'Y'
                    requestMtc:
                      description: Motor Truck Cargo
                      type: string
                      default: 'Y'
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'Y'
                    requestTgl:
                      description: Truckers General Liability
                      type: string
                      default: 'N'
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    requestNtl:
                      description: Non-Trucking Liability
                      type: string
                      default: 'N'
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    effectiveDate:
                      description: Format needs to be MM/DD/YYYY
                      type: string
                      example: 12/12/2020
                  type: object
                insuredInformation:
                  required:
                    - legalName
                    - yearsInBusiness
                  properties:
                    dotNumber:
                      description: ''
                      type: integer
                      example: '0000000'
                    ownerName:
                      description: ''
                      type: integer
                      example: John Doe
                    email:
                      description: Insurer email
                      type: string
                      example: j.doe@coverwhale.com
                    legalName:
                      description: JOHN AND JANE DOE TRUCKING
                      type: string
                    dbaName:
                      description: ''
                      type: string
                    yearsInBusiness:
                      description: Years in business in your name (with Loss Runs)
                      type: integer
                      example: '1'
                    monthsInBusiness:
                      description: Additonal months in business 1-12
                      type: integer
                      example: '2'
                    insuranceContactFirstName:
                      description: For fast claims
                      type: string
                    insuranceContactLastName:
                      description: For fast claims
                      type: string
                    insuranceContactPhone:
                      description: For fast claims
                      type: string
                    insuranceContactEmail:
                      description: For fast claims
                      type: string
                      example: j.doe@coverwhale.com
                  type: object
                retailAgent:
                  description: >-
                    Retail Agent attributes are required for Agencies quoting
                    that are wholesalers. It is ignored for Agencies quoting
                    that are retailers themselves.
                  properties:
                    AgencyName:
                      type: string
                      example: Test Agency
                    FirstName:
                      type: string
                    LastName:
                      type: string
                    Phone:
                      type: string
                    Email:
                      type: string
                      example: j.doe@coverwhale.com
                    Street:
                      type: string
                      default: mailingAddress.mailingStreet
                    City:
                      type: string
                      default: mailingAddress.mailingCity
                    State:
                      description: 2 Character code for State
                      type: string
                      default: mailingAddress.mailingState
                      example: CA
                    Zip:
                      type: string
                      default: mailingAddress.mailingZip
                      example: '12345'
                  type: object
                limits:
                  required:
                    - nbrOfTrucks
                    - valueOfTrucks
                  properties:
                    trailerInterchange:
                      description: ''
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: ''
                    trailerInterchangeLimit:
                      description: Required if trailer_interchange = Y
                      type: number
                      enum:
                        - 20000
                        - 25000
                        - 30000
                        - 35000
                        - 40000
                        - 45000
                        - 50000
                        - 55000
                        - 60000
                        - 65000
                        - 70000
                      example: '20000'
                    limitTowingStorage:
                      description: Towing, Labor and Storage Limit
                      type: number
                      enum:
                        - 2500
                        - 5000
                        - 7500
                        - 10000
                        - 15000
                        - 20000
                        - 25000
                      example: '2500'
                    nbrOfTrucks:
                      description: Number of Trucks, must be greater than 0
                      type: number
                      example: '1'
                    valueOfTrucks:
                      description: Total value of Trucks
                      type: number
                      example: '5000'
                    nbrOfTrailers:
                      description: Number of Trailers
                      type: number
                      example: '1'
                    valueOfTrailers:
                      description: Total value of Trailers
                      type: number
                      example: '5000'
                    limitAutoLiability:
                      description: Auto Liability Limit
                      type: number
                      example: '1000000'
                  type: object
                operations:
                  properties:
                    opsLocal:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'Y'
                    opsIntermediate:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    opsLongHaul:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    opsIntermodalPort:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    opsDumpTruckOther:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    opsDumpTruckSandGravel:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    opsEndDumper:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    opsLogging:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    opsRefrigirated:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    opsHotShot:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    opsOversizedOvernight:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    opsAutomobileHauler:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    opsHouseholdGoods:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    opsTanker:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    ineligibleOperations:
                      description: >-
                        Insured conduct any of the Ineligible Operations
                        mentioned on Sheet 'Ineligible Operations'
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    filingsAlFederal:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    filingsAlState:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                    priorInsuranceCancelledNonrenewed:
                      type: string
                      enum:
                        - 'Y'
                        - 'N'
                      example: 'N'
                  type: object
                garageAddress:
                  properties:
                    garageStreet:
                      type: string
                      default: mailingAddress.mailingStreet
                    garageCity:
                      type: string
                      default: mailingAddress.mailingCity
                    garageState:
                      description: 2 Character code for State
                      type: string
                      default: mailingAddress.mailingState
                      example: CA
                    garageZip:
                      type: string
                      default: mailingAddress.mailingZip
                      example: '12345'
                    garageCounty:
                      type: string
                      default: mailingAddress.mailingCounty
                    garageCountry:
                      type: string
                      default: mailingAddress.mailingCountry
                  type: object
                shippingAddress:
                  required:
                    - shippingStreet
                    - shippingCity
                    - shippingState
                    - shippingZip
                    - shippingCounty
                    - shippingCountry
                  properties:
                    shippingStreet:
                      type: string
                    shippingCity:
                      type: string
                    shippingState:
                      description: 2 Character code for State
                      type: string
                      example: CA
                    shippingZip:
                      type: string
                      example: '12345'
                    shippingCounty:
                      type: string
                    shippingCountry:
                      type: string
                  type: object
                mailingAddress:
                  required:
                    - mailingStreet
                    - mailingCity
                    - mailingState
                    - mailingZip
                    - mailingCounty
                    - mailingCountry
                  properties:
                    mailingStreet:
                      type: string
                    mailingCity:
                      type: string
                    mailingState:
                      description: 2 Character code for State
                      type: string
                      example: CA
                    mailingZip:
                      type: string
                      example: '12345'
                    mailingCounty:
                      type: string
                    mailingCountry:
                      type: string
                  type: object
                radius:
                  description: Combined need to be 100
                  properties:
                    radius0_50:
                      type: number
                      example: '25'
                    radius51_200:
                      type: number
                      example: '25'
                    radius201_500:
                      type: number
                      example: '25'
                    radius501:
                      type: number
                      example: '25'
                  type: object
                commoditiesRefrigeration:
                  type: string
                  default: 'N'
                  enum:
                    - 'Y'
                    - 'N'
                  example: 'N'
                commodities:
                  description: If multiple commodities, create a new row for each commodity
                  type: array
                  items:
                    properties:
                      commodityKey:
                        type: string
                        enum:
                          - agricultural_equipment
                          - alcoholic_beverages
                          - appliances
                          - arms_ammunition_fireworks
                          - automobile_parts_and_accessories
                          - automobiles_or_motorcycles
                          - beer_and_wine
                          - beverages
                          - building_materials
                          - bulk_or_bagged_nuts
                          - cameras_and_film
                          - cannabis_cbd
                          - canned_goods
                          - cement_sand_or_gravel
                          - chemicals_packaged_or_bulk
                          - china_and_ceramics
                          - cigarettes_and_cigars
                          - clothing
                          - coal
                          - computers
                          - contractors_heavy_equipment
                          - cosmetics_and_perfume
                          - cotton
                          - courier_documents
                          - cranes
                          - currency
                          - dairy_products
                          - dangerous_articles_explosives_corrosives_flamma
                          - documents
                          - drugs
                          - dry_goods
                          - eggs_shell
                          - electrical_supplies_and_fixtures
                          - empty_trailers
                          - farm_products
                          - fertilizer
                          - fine_arts
                          - food_products
                          - fracking
                          - frozen_or_refrigerated
                          - furniture
                          - furs
                          - general_merchandise
                          - glassware
                          - grain_hay_feed
                          - hanging_meat
                          - hardware_and_paint
                          - hazmat
                          - household_effects
                          - household_goods
                          - intermodal_containers
                          - jewelry
                          - ladies_and_mens_dress_apparel
                          - leather_goods
                          - liquid_haulers
                          - livestock_and_live_poultry
                          - logs
                          - lumber
                          - machinery_light
                          - machinery_and_heavy_equipment
                          - meat
                          - metal_and steel
                          - mobile_homes
                          - narcotics
                          - non-ferrous_metal
                          - nursery-plants_trees_flowers
                          - office_equipment
                          - paper_and_paper_products
                          - people
                          - petroleum_products
                          - pipe_cable_and_wire
                          - plumbing_supplies
                          - plastic_and_plastic_products
                          - poultry
                          - power_tools
                          - precious_metals
                          - precious_stones
                          - produce
                          - recreational_vehicles_boats_rvs
                          - refuse_garbage
                          - rugs_and_carpets_oriental
                          - rugs_and_carpets
                          - scrap_metal
                          - seafood_canned
                          - seafood_fresh
                          - seafood_frozen
                          - seafood_shellfish
                          - seafood
                          - shoes
                          - specialized_heavy_haulers
                          - sporting_goods_and_toys
                          - textiles
                          - tires_and_tubes
                          - tobacco
                          - tv_radios_and_stereo_equipment
                          - video_equipment_and_tapes
                      commodityPercentage:
                        description: All rows must combine to 100
                        type: number
                        maximum: 100
                        minimum: 0
                        example: '100'
                    type: object
                terminals:
                  type: array
                  items:
                    properties:
                      terminalStreet:
                        type: string
                      terminalCity:
                        type: string
                      terminalState:
                        description: 2 Character code for State
                        type: string
                        example: CA
                      terminalZip:
                        type: string
                        example: '12345'
                      terminalCounty:
                        type: string
                    type: object
                vehicles:
                  type: array
                  items:
                    properties:
                      vin:
                        type: string
                        maximum: 17
                      includeAPDTowing:
                        type: string
                      year:
                        type: integer
                        example: '2020'
                      make:
                        type: string
                      model:
                        type: string
                      value:
                        type: integer
                        example: '5000'
                      classKey:
                        type: string
                        enum:
                          - '1'
                          - 2a
                          - 2b
                          - '3'
                          - '4'
                          - '5'
                          - '6'
                          - '7'
                          - '8'
                        example: '1'
                      bodyTypeKey:
                        type: string
                        default: tractor
                        enum:
                          - auto_hauler_trailers
                          - ambulance_emergency_vehicles
                          - armored_cars
                          - box_truck
                          - carnival_circus_vehicles
                          - carnival_vehicles
                          - cement_trucks
                          - concrete_pumpers
                          - contractor_vehicles
                          - dump_trucks
                          - garbage_trucks
                          - logging_trucks
                          - milk_trucks
                          - mobile_cranes
                          - pick-up_trucks_suv_or_service_trucks
                          - private_passenger_autos
                          - shuttle_limo_bus_vans
                          - straight_truck
                          - tow_trucks
                          - tractor
                          - truck_less_than_14_gvw
                        example: box_truck
                    type: object
                trailers:
                  type: array
                  items:
                    properties:
                      vin:
                        type: string
                        maximum: 17
                      year:
                        type: integer
                        example: '2020'
                      make:
                        type: string
                      model:
                        type: string
                      value:
                        type: integer
                        example: '5000'
                      bodyTypeKey:
                        type: string
                        enum:
                          - auto_hauler_trailers
                          - curtain_van_trailer
                          - double_trailers
                          - dry_van_trailer
                          - flat_bed_trailer
                          - livestock_trailer
                          - refrigeration_trailer
                          - tank_trailer
                          - triple_trailers
                          - hopper_trailer
                          - pneumatic_trailer
                        example: curtain_van_trailer
                    type: object
                drivers:
                  type: array
                  items:
                    properties:
                      firstName:
                        type: string
                        maximum: 17
                      lastName:
                        type: integer
                        example: '2020'
                      licenseState:
                        description: 2 Character code for State
                        type: string
                        example: CA
                      licenseNumber:
                        type: string
                      dateOfBirth:
                        description: Format needs to be MM/DD/YYYY
                        type: string
                        example: 12/12/1988
                      dateOfHire:
                        description: Format needs to be MM/DD/YYYY
                        type: string
                        example: 12/12/2020
                      yearsExperience:
                        type: integer
                        example: '3'
                      accidents_total:
                        description: Number of Accidents in the last 36 months
                        type: integer
                        example: '1'
                      violations_total:
                        description: Number of Violations in the last 36 months
                        type: integer
                        example: '0'
                      suspensions_total:
                        description: Number of Suspensions in the last 36 months
                        type: integer
                        example: '0'
                      eligibility:
                        type: string
                        enum:
                          - Covered
                          - Excluded
                        example: Covered
                      isOwner:
                        type: boolean
                        example: true
                    type: object
                losses:
                  description: (we need last 3 years if available), maximum 3
                  properties:
                    '1':
                      description: Year 1 of losses
                      properties:
                        lossConfirmed:
                          type: string
                          enum:
                            - 'Y'
                            - 'N'
                        lossAlCount:
                          type: integer
                          example: '1'
                        lossAlPaid:
                          type: number
                          example: '0'
                        lossApdCount:
                          type: integer
                          example: '1'
                        lossApdPaid:
                          type: number
                          example: '0'
                        lossMtcCount:
                          type: integer
                          example: '0'
                        lossMtcPaid:
                          type: number
                          example: '0'
                        lossTglCount:
                          type: integer
                          example: '0'
                        lossTglPaid:
                          type: number
                          example: '0'
                        lossNtlCount:
                          type: integer
                          example: '0'
                        lossNtlPaid:
                          type: number
                          example: '0'
                      type: object
                  type: object
              type: object
      responses:
        '200':
          description: quote success
          content:
            application/json:
              schema:
                properties:
                  status:
                    description: Created Submission status (Quoted, Declined)
                    type: string
                  errors:
                    description: In case of declined here array of decline reasons
                    type: array
                    items:
                      type: string
                  submission_number:
                    description: The created submission number
                    type: string
                  coverages:
                    description: >-
                      Return the coverages and the premium values for al, apd,
                      mtc, tgl and ntl if the submission is quoted
                    type: array
                    items:
                      properties:
                        al:
                          type: array
                          items:
                            properties:
                              totalCost:
                                type: number
                                example: '250000'
                              premium:
                                type: number
                                example: '250000'
                              limit:
                                type: number
                                example: '100000'
                              deductible:
                                type: number
                                example: '0'
                            type: object
                        apd:
                          type: array
                          items:
                            properties:
                              totalCost:
                                type: number
                                example: '250000'
                              premium:
                                type: number
                                example: '250000'
                              limit:
                                type: number
                                example: '100000'
                              deductible:
                                type: number
                                example: '0'
                            type: object
                        mtc:
                          type: array
                          items:
                            properties:
                              totalCost:
                                type: number
                                example: '250000'
                              premium:
                                type: number
                                example: '250000'
                              limit:
                                type: number
                                example: '100000'
                              deductible:
                                type: number
                                example: '0'
                            type: object
                        tgl:
                          type: array
                          items:
                            properties:
                              totalCost:
                                type: number
                                example: '250000'
                              premium:
                                type: number
                                example: '250000'
                              limit:
                                type: number
                                example: '100000'
                              deductible:
                                type: number
                                example: '0'
                            type: object
                        ntl:
                          type: array
                          items:
                            properties:
                              totalCost:
                                type: number
                                example: '250000'
                              premium:
                                type: number
                                example: '250000'
                              limit:
                                type: number
                                example: '100000'
                              deductible:
                                type: number
                                example: '0'
                            type: object
                      type: object
                type: object
                example:
                  status: Quoted
                  submission_number: '2172961'
                  coverages:
                    al:
                      totalCost: 20617.52
                      premium: 20617.52
                      limit: 1000000
                      deductible: 0
                  quote_pdf: >-
                    https://app.coverwhale.com/transportation/2172961/0/download_quote_pdf
        '422':
          description: error
          content:
            application/json:
              schema:
                properties:
                  message:
                    description: The given data was invalid
                    type: string
                  errors:
                    type: array
                    items:
                      type: string
                type: object
                example:
                  message: The given data was invalid.
                  errors:
                    email:
                      - The email must be a valid email address.
components:
  securitySchemes:
    AccessToken:
      type: apiKey
      description: >-
        AWS Cognito access token obtained from the /authentication endpoint.
        Token expires after 3600 seconds.
      name: AccessToken
      in: header

````