Skip to main content
PUT
/
invoices
/
estimate
/
{estimateId}
Update Estimate
curl --request PUT \
  --url https://services.leadconnectorhq.com/invoices/estimate/{estimateId} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --header 'Version: <version>' \
  --data @- <<EOF
{
  "altId": "6578278e879ad2646715ba9c",
  "altType": "location",
  "name": "Home Service Estimate",
  "businessDetails": {
    "logoUrl": "https://example.com/logo.png",
    "name": "ABC Corp.",
    "phoneNo": "+1-214-559-6993",
    "address": "9931 Beechwood, TX",
    "website": "wwww.example.com",
    "customValues": [
      "<string>"
    ]
  },
  "currency": "USD",
  "items": [
    {
      "name": "ABC Product",
      "currency": "USD",
      "amount": 999,
      "qty": 1,
      "description": "ABC Corp.",
      "productId": "6578278e879ad2646715ba9c",
      "priceId": "6578278e879ad2646715ba9c",
      "taxes": [
        {
          "_id": "<string>",
          "name": "<string>",
          "rate": 123,
          "calculation": "exclusive",
          "description": "<string>",
          "taxId": "<string>"
        }
      ],
      "automaticTaxCategoryId": "6578278e879ad2646715ba9c",
      "isSetupFeeItem": true,
      "type": "one_time",
      "taxInclusive": true,
      "attachments": [
        "https://example.com/file1.jpg",
        "https://example.com/file2.png"
      ]
    }
  ],
  "discount": {
    "type": "percentage",
    "value": 10,
    "validOnProductIds": "[ '6579751d56f60276e5bd4154' ]"
  },
  "contactDetails": {
    "id": "6578278e879ad2646715ba9c",
    "name": "Alex",
    "phoneNo": "+1234567890",
    "email": "alex@example.com",
    "additionalEmails": [
      {
        "email": "alex@example.com"
      }
    ],
    "companyName": "ABC Corp.",
    "address": {
      "addressLine1": "9931 Beechwood",
      "addressLine2": "Beechwood",
      "city": "St. Houston",
      "state": "TX",
      "countryCode": "US",
      "postalCode": "559-6993"
    },
    "customFields": [
      "<string>"
    ]
  },
  "frequencySettings": {
    "enabled": true,
    "schedule": {
      "executeAt": "<string>",
      "rrule": {
        "intervalType": "monthly",
        "interval": 2,
        "startDate": "2023-01-01",
        "startTime": "20:45:00",
        "endDate": "2029-11-01",
        "endTime": "18:45:00",
        "dayOfMonth": 15,
        "dayOfWeek": "mo",
        "numOfWeek": -1,
        "monthOfYear": "jan",
        "count": 10,
        "daysBefore": 5,
        "useStartAsPrimaryUserAccepted": true,
        "endType": "by"
      }
    }
  },
  "liveMode": true,
  "termsNotes": "<p>This is a default terms.</p>",
  "title": "ESTIMATE",
  "estimateNumber": 1001,
  "issueDate": "2024-08-07",
  "expiryDate": "2024-08-10",
  "sentTo": {
    "email": [
      "alex@example.com"
    ],
    "emailCc": [
      "alex@example.com"
    ],
    "emailBcc": [
      "alex@example.com"
    ],
    "phoneNo": [
      "+1-214-559-6993"
    ]
  },
  "automaticTaxesEnabled": true,
  "meta": {
    "key": "value"
  },
  "sendEstimateDetails": {
    "altId": "6578278e879ad2646715ba9c",
    "altType": "location",
    "action": "sms_and_email",
    "liveMode": true,
    "userId": "6578278e879ad2646715ba9c",
    "sentFrom": {
      "fromName": "Alex",
      "fromEmail": "alex@example.com"
    },
    "estimateName": "Estimate"
  },
  "estimateNumberPrefix": "EST-",
  "userId": "6578278e879ad2646715ba9c",
  "attachments": [
    {
      "id": "6241712be68f7a98102ba272",
      "name": "Electronics.pdf",
      "url": "https://example.com/digital-delivery",
      "type": "<string>",
      "size": 10000
    }
  ],
  "autoInvoice": {
    "enabled": true,
    "directPayments": true
  },
  "miscellaneousCharges": {
    "charges": [
      "<array>"
    ],
    "collectedMiscellaneousCharges": 10,
    "paidCharges": [
      {
        "name": "Processing Fee",
        "charge": 10,
        "amount": 10,
        "_id": "673d01d7d547648a8dab6211"
      }
    ]
  },
  "paymentScheduleConfig": {
    "type": "fixed",
    "dateConfig": {
      "depositDateType": "estimate_accepted",
      "scheduleDateType": "regular_interval"
    },
    "schedules": [
      "<array>"
    ]
  },
  "estimateStatus": "sent"
}
EOF
{
  "altId": "6578278e879ad2646715ba9c",
  "altType": "location",
  "_id": "67ac9a51106ee8311e911XXXX",
  "liveMode": true,
  "deleted": false,
  "name": "Estimate Name",
  "currency": "USD",
  "businessDetails": {
    "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": [
    {
      "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"
    }
  ],
  "discount": {
    "type": "percentage",
    "value": 0
  },
  "total": 1222.03,
  "createdAt": "2025-02-12T13:17:47.416Z",
  "updatedAt": "2025-02-12T13:17:47.416Z",
  "__v": 0,
  "automaticTaxesEnabled": false,
  "companyId": "COMP12345",
  "contactDetails": {
    "id": "jvzfKTNdE7OYXXXXXX",
    "name": "Contact Name",
    "phoneNo": "+911111111114",
    "email": "email@test.com",
    "address": {
      "countryCode": "US"
    }
  },
  "issueDate": "2023-06-15T00:00:00.000Z",
  "expiryDate": "2023-07-15T00:00:00.000Z",
  "automaticTaxesCalculated": true,
  "meta": {
    "key": "value"
  },
  "estimateActionHistory": [
    {
      "action": "Created",
      "timestamp": "2023-06-15T10:00:00.000Z"
    }
  ],
  "sentTo": {
    "email": [
      "test@example.com"
    ],
    "phoneNo": [
      "+1 99444444444"
    ]
  },
  "frequencySettings": {
    "enabled": false
  },
  "lastVisitedAt": "2023-06-20T08:30:00.000Z",
  "totalamountInUSD": 1500.75,
  "traceId": "010c7a01-857f-4619-970d-xyxyxyxy",
  "title": "ESTIMATE",
  "estimateNumberPrefix": "EST-",
  "attachments": [
    {
      "id": "6241712be68f7a98102ba272",
      "name": "Electronics.pdf",
      "url": "https://example.com/digital-delivery",
      "type": "<string>",
      "size": 10000
    }
  ],
  "updatedBy": "3HIpOF9NIc5ltriQXXXX",
  "termsNotes": "<p>All services are subject to availability.</p>",
  "sentBy": "user@example.com",
  "autoInvoice": {
    "enabled": true,
    "directPayments": false
  }
}

Authorizations

Authorization
string
header
required

Use the Access Token generated with user type as Sub-Account (OR) Private Integration Token of Sub-Account.

Headers

Version
enum<string>
required

API Version

Available options:
2021-07-28

Path Parameters

estimateId
string
required

Estimate Id

Example:

"5f9d6d8b1b2d2c001f2d9e4b"

Body

application/json
altId
string
required

Location Id or Agency Id

Example:

"6578278e879ad2646715ba9c"

altType
enum<string>
required
Available options:
location
name
string
required

Estimate Name

Example:

"Home Service Estimate"

businessDetails
object
required
currency
string
required

Currency code

Example:

"USD"

items
object[]
required

An array of items for the estimate.

discount
object
required
contactDetails
object
required
frequencySettings
object
required
liveMode
boolean
default:true

livemode for estimate

Example:

true

termsNotes
string

Terms notes, Also supports HTML markups

Example:

"<p>This is a default terms.</p>"

title
string

Title for the estimate

Example:

"ESTIMATE"

estimateNumber
number

Estimate Number, if not specified will take in the next valid estimate number

Example:

1001

issueDate
string

issue date estimate

Example:

"2024-08-07"

expiryDate
string

expiry date estimate

Example:

"2024-08-10"

sentTo
object
automaticTaxesEnabled
boolean
default:false

Automatic taxes enabled for the Estimate

Example:

true

meta
object

Meta data for the estimate

Example:
{ "key": "value" }
sendEstimateDetails
object
estimateNumberPrefix
string
default:EST-

Prefix for the estimate number

Example:

"EST-"

userId
string

User Id

Example:

"6578278e879ad2646715ba9c"

attachments
object[]

attachments for the invoice

autoInvoice
object
Example:
{ "enabled": true, "directPayments": true }
miscellaneousCharges
object
paymentScheduleConfig
object
estimateStatus
enum<string>

Estimate Status

Available options:
all,
draft,
sent,
accepted,
declined,
invoiced,
viewed
Example:

"sent"

Response

Successfully updated

altId
string
required

Location Id or Agency Id

Example:

"6578278e879ad2646715ba9c"

altType
enum<string>
required
Available options:
location
_id
string
required

Unique identifier

Example:

"67ac9a51106ee8311e911XXXX"

liveMode
boolean
required

Indicates if it is in live mode

Example:

true

deleted
boolean
required

Indicates if deleted

Example:

false

name
string
required

Name

Example:

"Estimate Name"

currency
string
required

Currency code

Example:

"USD"

businessDetails
object
required
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
array[]
required

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"
}
]
discount
object
required
Example:
{ "type": "percentage", "value": 0 }
total
number
required

Total amount

Example:

1222.03

createdAt
string<date-time>
required

Timestamp when created

Example:

"2025-02-12T13:17:47.416Z"

updatedAt
string<date-time>
required

Timestamp when last updated

Example:

"2025-02-12T13:17:47.416Z"

__v
number
required

Version number

Example:

0

automaticTaxesEnabled
boolean
required

Indicates if automatic taxes are enabled for this estimate

Example:

false

companyId
string
required

Company identifier associated with the estimate

Example:

"COMP12345"

contactDetails
object
required
Example:
{
"id": "jvzfKTNdE7OYXXXXXX",
"name": "Contact Name",
"phoneNo": "+911111111114",
"email": "email@test.com",
"address": { "countryCode": "US" }
}
issueDate
string<date-time>
required

Date when the estimate was issued

Example:

"2023-06-15T00:00:00.000Z"

expiryDate
string<date-time>
required

Date when the estimate expires

Example:

"2023-07-15T00:00:00.000Z"

automaticTaxesCalculated
boolean
required

Indicates if automatic taxes were calculated

Example:

true

meta
object
required

Additional metadata associated with the estimate

Example:
{ "key": "value" }
estimateActionHistory
string[]
required

History of actions taken on the estimate

Example:
[
{
"action": "Created",
"timestamp": "2023-06-15T10:00:00.000Z"
}
]
sentTo
object
required
Example:
{
"email": ["test@example.com"],
"phoneNo": ["+1 99444444444"]
}
frequencySettings
object
required
Example:
{ "enabled": false }
lastVisitedAt
string<date-time>
required

Timestamp when the estimate was last visited

Example:

"2023-06-20T08:30:00.000Z"

totalamountInUSD
number
required

Total amount in USD

Example:

1500.75

traceId
string
required

Trace ID for logging and debugging

Example:

"010c7a01-857f-4619-970d-xyxyxyxy"

title
string

Title

Example:

"ESTIMATE"

estimateNumberPrefix
string

Estimate number prefix

Example:

"EST-"

attachments
object[]

Attachments

updatedBy
string

User Id of who last updated

Example:

"3HIpOF9NIc5ltriQXXXX"

termsNotes
string

Terms and conditions for the estimate, supports HTML markup

Example:

"<p>All services are subject to availability.</p>"

sentBy
string

User who sent the estimate

Example:

"user@example.com"

autoInvoice
object
Example:
{ "enabled": true, "directPayments": false }
Last modified on March 4, 2026