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

# Send Estimate

> API to send estimate by estimate id



## OpenAPI

````yaml /api-reference/invoices/openapi.json post /invoices/estimate/{estimateId}/send
openapi: 3.0.0
info:
  title: Invoice API
  description: Documentation for invoice API
  version: '1.0'
  contact: {}
servers:
  - url: https://services.leadconnectorhq.com
security: []
tags:
  - name: Invoice
    description: Documentation for invoice API
  - name: Template
    description: Documentation for invoice API
  - name: Schedule
    description: Documentation for invoice API
  - name: Text2Pay
    description: Documentation for invoice API
  - name: Estimate
    description: Documentation for invoice API
paths:
  /invoices/estimate/{estimateId}/send:
    post:
      tags:
        - Estimate
      summary: Send Estimate
      description: API to send estimate by estimate id
      operationId: send-estimate
      parameters:
        - name: Version
          in: header
          description: API Version
          required: true
          schema:
            type: string
            enum:
              - '2021-07-28'
        - name: estimateId
          required: true
          in: path
          description: Estimate Id
          schema:
            example: 5f9d6d8b1b2d2c001f2d9e4b
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/SendEstimateDto'
      responses:
        '201':
          description: Created
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/EstimateResponseDto'
        '400':
          description: Bad Request
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequestDTO'
        '401':
          description: Unauthorized
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnauthorizedDTO'
        '422':
          description: Unprocessable Entity
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UnprocessableDTO'
      security:
        - Location-Access:
            - invoices/estimate.write
        - Agency-Access:
            - invoices/estimate.write
components:
  schemas:
    SendEstimateDto:
      type: object
      properties:
        altId:
          type: string
          description: Location Id or Agency Id
          example: 6578278e879ad2646715ba9c
        altType:
          type: string
          enum:
            - location
        action:
          type: string
          enum:
            - sms_and_email
            - send_manually
            - email
            - sms
        liveMode:
          type: boolean
          description: livemode for estimate
          example: true
        userId:
          type: string
          description: >-
            Please ensure that the UserId corresponds to an authorized
            personnel, either by an employee ID or agency ID, to access this
            location. This account will serve as the primary channel for all
            future communications and updates.
          example: 6578278e879ad2646715ba9c
        sentFrom:
          $ref: '#/components/schemas/InvoiceSettingsSenderConfigurationDto'
        estimateName:
          type: string
          description: estimate name
          example: Estimate
      required:
        - altId
        - altType
        - action
        - liveMode
        - userId
    EstimateResponseDto:
      type: object
      properties:
        altId:
          type: string
          description: Location Id or Agency Id
          example: 6578278e879ad2646715ba9c
        altType:
          type: string
          enum:
            - location
        _id:
          type: string
          description: Unique identifier
          example: 67ac9a51106ee8311e911XXXX
        liveMode:
          type: boolean
          description: Indicates if it is in live mode
          example: true
        deleted:
          type: boolean
          description: Indicates if deleted
          example: false
        name:
          type: string
          description: Name
          example: Estimate Name
        currency:
          type: string
          description: Currency code
          example: USD
        businessDetails:
          $ref: '#/components/schemas/BusinessDetails'
          example:
            logoUrl: your_image-url
            name: Business name
            address:
              addressLine1: address line 1
              city: Test City
              state: State Name
              countryCode: US
              postalCode: '12345'
            phoneNo: +1 1234567890
            website: www.example.com
            customValues:
              - name: Test
                fieldKey: '{{custom_values.test}}'
                id: 5DYTWoiQvWiIJZXX44XXX
                value: Test's Custom Value
        items:
          description: An array of items
          example:
            - taxes: []
              taxInclusive: false
              _id: 67ac9a51106ee8311e911XXXX
              description: <p>Futuristic anti-gravity racing</p>
              currency: USD
              productId: 67ac9a51106ee8311e911XXXX
              priceId: 67ac9a51106ee8311e911XXXX
              amount: 9.99
              qty: 1
              name: TEST
              type: one_time
            - taxes:
                - _id: 67ac9a51106ee8311e911XXXX
                  name: TaxTwo
                  rate: 8.5
                  calculation: exclusive
              taxInclusive: true
              _id: 67ac9a51106ee8311e911XXXX
              productId: 67ac9a51106ee8311e911XXXX
              priceId: 67ac9a51106ee8311e911XXXX
              currency: USD
              name: TEST2
              qty: 1
              amount: 500
              description: ''
              type: recurring
          type: array
          items:
            type: array
        discount:
          $ref: '#/components/schemas/DiscountDto'
          example:
            type: percentage
            value: 0
        title:
          type: string
          description: Title
          example: ESTIMATE
        estimateNumberPrefix:
          type: string
          description: Estimate number prefix
          example: EST-
        attachments:
          description: Attachments
          type: array
          items:
            $ref: '#/components/schemas/AttachmentsDto'
        updatedBy:
          type: string
          description: User Id of who last updated
          example: 3HIpOF9NIc5ltriQXXXX
        total:
          type: number
          description: Total amount
          example: 1222.03
        createdAt:
          format: date-time
          type: string
          description: Timestamp when created
          example: '2025-02-12T13:17:47.416Z'
        updatedAt:
          format: date-time
          type: string
          description: Timestamp when last updated
          example: '2025-02-12T13:17:47.416Z'
        __v:
          type: number
          description: Version number
          example: 0
        automaticTaxesEnabled:
          type: boolean
          description: Indicates if automatic taxes are enabled for this estimate
          example: false
        termsNotes:
          type: string
          description: Terms and conditions for the estimate, supports HTML markup
          example: <p>All services are subject to availability.</p>
        companyId:
          type: string
          description: Company identifier associated with the estimate
          example: COMP12345
        contactDetails:
          $ref: '#/components/schemas/ContactDetails'
          example:
            id: jvzfKTNdE7OYXXXXXX
            name: Contact Name
            phoneNo: '+911111111114'
            email: email@test.com
            address:
              countryCode: US
        issueDate:
          format: date-time
          type: string
          description: Date when the estimate was issued
          example: '2023-06-15T00:00:00.000Z'
        expiryDate:
          format: date-time
          type: string
          description: Date when the estimate expires
          example: '2023-07-15T00:00:00.000Z'
        sentBy:
          type: string
          description: User who sent the estimate
          example: user@example.com
        automaticTaxesCalculated:
          type: boolean
          description: Indicates if automatic taxes were calculated
          example: true
        meta:
          type: object
          description: Additional metadata associated with the estimate
          example:
            key: value
        estimateActionHistory:
          description: History of actions taken on the estimate
          example:
            - action: Created
              timestamp: '2023-06-15T10:00:00.000Z'
          type: array
          items:
            type: string
        sentTo:
          $ref: '#/components/schemas/SentTo'
          example:
            email:
              - test@example.com
            phoneNo:
              - +1 99444444444
        frequencySettings:
          $ref: '#/components/schemas/FrequencySettingsDto'
          example:
            enabled: false
        lastVisitedAt:
          format: date-time
          type: string
          description: Timestamp when the estimate was last visited
          example: '2023-06-20T08:30:00.000Z'
        totalamountInUSD:
          type: number
          description: Total amount in USD
          example: 1500.75
        autoInvoice:
          $ref: '#/components/schemas/AutoInvoice'
          example:
            enabled: true
            directPayments: false
        traceId:
          type: string
          description: Trace ID for logging and debugging
          example: 010c7a01-857f-4619-970d-xyxyxyxy
      required:
        - altId
        - altType
        - _id
        - liveMode
        - deleted
        - name
        - currency
        - businessDetails
        - items
        - discount
        - total
        - createdAt
        - updatedAt
        - __v
        - automaticTaxesEnabled
        - companyId
        - contactDetails
        - issueDate
        - expiryDate
        - automaticTaxesCalculated
        - meta
        - estimateActionHistory
        - sentTo
        - frequencySettings
        - lastVisitedAt
        - totalamountInUSD
        - traceId
    BadRequestDTO:
      type: object
      properties:
        statusCode:
          type: number
          example: 400
        message:
          type: string
          example: Bad Request
      required:
        - statusCode
        - message
    UnauthorizedDTO:
      type: object
      properties:
        statusCode:
          type: number
          example: 401
        message:
          type: string
          example: 'Invalid token: access token is invalid'
        error:
          type: string
          example: Unauthorized
      required:
        - statusCode
        - message
        - error
    UnprocessableDTO:
      type: object
      properties:
        statusCode:
          type: number
          example: 422
        message:
          type: array
          items:
            type: string
          example:
            - Unprocessable Entity
        error:
          type: string
          example: Unprocessable Entity
      required:
        - statusCode
        - message
        - error
    InvoiceSettingsSenderConfigurationDto:
      type: object
      properties:
        fromName:
          type: string
          description: Sender name to be used while sending email notification
          example: Alex
        fromEmail:
          type: string
          description: Email id to be used while sending email notification
          example: alex@example.com
    BusinessDetails:
      type: object
      properties: {}
    DiscountDto:
      type: object
      properties:
        value:
          type: number
          description: Discount Value
          example: 10
          default: 0
        type:
          type: string
          description: Discount type
          enum:
            - percentage
            - fixed
          example: percentage
          default: percentage
        validOnProductIds:
          description: Product Ids on which discount is applicable
          example: '[ ''6579751d56f60276e5bd4154'' ]'
          type: array
          items:
            type: string
      required:
        - type
    AttachmentsDto:
      type: object
      properties:
        id:
          type: string
          description: Id of the file selected
          example: 6241712be68f7a98102ba272
        name:
          type: string
          description: 'Name of the file '
          example: Electronics.pdf
        url:
          type: string
          description: URL of the file
          example: https://example.com/digital-delivery
        type:
          type: string
          description: Type of the file
        size:
          type: number
          description: Size of the file
          example: 10000
      required:
        - id
        - name
        - url
        - type
        - size
    ContactDetails:
      type: object
      properties: {}
    SentTo:
      type: object
      properties: {}
    FrequencySettingsDto:
      type: object
      properties:
        enabled:
          type: boolean
          description: enabled for the frequency settings
          example: true
        schedule:
          $ref: '#/components/schemas/ScheduleOptionsDto'
      required:
        - enabled
        - schedule
    AutoInvoice:
      type: object
      properties: {}
    ScheduleOptionsDto:
      type: object
      properties:
        executeAt:
          type: string
        rrule:
          $ref: '#/components/schemas/CustomRRuleOptionsDto'
    CustomRRuleOptionsDto:
      type: object
      properties:
        intervalType:
          type: string
          enum:
            - yearly
            - monthly
            - weekly
            - daily
            - hourly
            - minutely
            - secondly
          example: monthly
        interval:
          type: number
          example: 2
        startDate:
          type: string
          description: Start date in YYYY-MM-DD format
          example: '2023-01-01'
        startTime:
          type: string
          description: Start time in HH:mm:ss format
          example: '20:45:00'
        endDate:
          type: string
          description: End date in YYYY-MM-DD format
          example: '2029-11-01'
        endTime:
          type: string
          description: End time in HH:mm:ss format
          example: '18:45:00'
        dayOfMonth:
          type: number
          description: '-1, 1, 2, 3, ..., 27, 28'
          example: 15
        dayOfWeek:
          type: string
          enum:
            - mo
            - tu
            - we
            - th
            - fr
            - sa
            - su
          example: mo
        numOfWeek:
          type: number
          description: '-1, 1, 2, 3, 4'
          example: -1
        monthOfYear:
          type: string
          enum:
            - jan
            - feb
            - mar
            - apr
            - may
            - jun
            - jul
            - aug
            - sep
            - oct
            - nov
            - dec
          example: jan
        count:
          type: number
          description: Max number of task executions
          example: 10
        daysBefore:
          type: number
          description: Execute task number of days before
          example: 5
        useStartAsPrimaryUserAccepted:
          type: boolean
          description: Start as primary user accepted date
          example: true
        endType:
          type: string
          description: End type like after, by, count
          example: by
      required:
        - intervalType
        - interval
        - startDate

````