# Update Estimate Template

PUT https://services.leadconnectorhq.com/invoices/estimate/template/{templateId}

Update an existing estimate template

## Authentication

Send `Authorization: Bearer <token>` using any one of:

- **Sub-Account token: OAuth access token or Private Integration Token.** Scopes: `invoices/estimate.write`
- **Agency token: OAuth access token or Private Integration Token.** Scopes: `invoices/estimate.write`

## Parameters

### Header Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `Version` | string | Yes | API Version |

### Path Parameters

| Name | Type | Required | Description |
|------|------|----------|-------------|
| `templateId` | string | Yes | Template Id |

## OpenAPI Specification

```json
{
  "openapi": "3.0.0",
  "info": {
    "title": "LeadConnector API",
    "version": "v3"
  },
  "servers": [
    {
      "url": "https://services.leadconnectorhq.com"
    }
  ],
  "paths": {
    "/invoices/estimate/template/{templateId}": {
      "put": {
        "summary": "Update Estimate Template",
        "operationId": "updateEstimateTemplate",
        "description": "Update an existing estimate template",
        "parameters": [
          {
            "name": "Version",
            "in": "header",
            "description": "API Version",
            "required": true,
            "schema": {
              "type": "string",
              "enum": [
                "v3"
              ]
            }
          },
          {
            "name": "templateId",
            "required": true,
            "in": "path",
            "description": "Template Id",
            "schema": {
              "example": "5f9d6d8b1b2d2c001f2d9e4b",
              "type": "string"
            }
          }
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/EstimateTemplatesDto"
              }
            }
          }
        },
        "responses": {
          "200": {
            "description": "Successfully updated",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/EstimateTemplateResponseDTO"
                }
              }
            }
          },
          "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": {
    "securitySchemes": {
      "bearer": {
        "scheme": "bearer",
        "bearerFormat": "JWT",
        "name": "Authorization",
        "in": "header",
        "description": "Use the Access Token generated with user type as Sub-Account (OR) Private Integration Token of Sub-Account.",
        "type": "http"
      },
      "Location-Access": {
        "scheme": "bearer",
        "bearerFormat": "JWT",
        "name": "Authorization",
        "in": "header",
        "description": "Use the Access Token generated with user type as Sub-Account (OR) Private Integration Token of Sub-Account.",
        "type": "http"
      },
      "Location-Access-Only": {
        "scheme": "bearer",
        "bearerFormat": "JWT",
        "name": "Authorization",
        "in": "header",
        "description": "Use the Access Token generated with user type as Sub-Account.",
        "type": "http"
      },
      "Agency-Access": {
        "scheme": "bearer",
        "bearerFormat": "JWT",
        "name": "Authorization",
        "in": "header",
        "description": "Use the Access Token generated with user type as Agency (OR) Private Integration Token of Agency.",
        "type": "http"
      },
      "Agency-Access-Only": {
        "scheme": "bearer",
        "bearerFormat": "JWT",
        "name": "Authorization",
        "in": "header",
        "description": "Use the Access Token generated with user type as Agency.",
        "type": "http"
      }
    },
    "schemas": {
      "EstimateTemplatesDto": {
        "type": "object",
        "properties": {
          "altId": {
            "type": "string",
            "description": "Location Id or Agency Id",
            "example": "6578278e879ad2646715ba9c"
          },
          "altType": {
            "type": "string",
            "enum": [
              "location"
            ]
          },
          "name": {
            "type": "string",
            "description": "Estimate Name",
            "example": "Home Service Estimate Template"
          },
          "businessDetails": {
            "type": "object",
            "properties": {
              "logoUrl": {
                "type": "string",
                "description": "Business Logo URL",
                "example": "https://example.com/logo.png"
              },
              "name": {
                "type": "string",
                "description": "Business Name",
                "example": "ABC Corp."
              },
              "phoneNo": {
                "type": "string",
                "description": "Business Phone Number",
                "example": "+1-214-559-6993"
              },
              "address": {
                "description": "Business Address",
                "example": "9931 Beechwood, TX",
                "allOf": [
                  {
                    "type": "object",
                    "properties": {
                      "addressLine1": {
                        "type": "string",
                        "description": "Address Line 1",
                        "example": "9931 Beechwood"
                      },
                      "addressLine2": {
                        "type": "string",
                        "description": "Address Line 2",
                        "example": "Beechwood"
                      },
                      "city": {
                        "type": "string",
                        "description": "City",
                        "example": "St. Houston"
                      },
                      "state": {
                        "type": "string",
                        "description": "State",
                        "example": "TX"
                      },
                      "countryCode": {
                        "type": "string",
                        "description": "Country Code",
                        "example": "US"
                      },
                      "postalCode": {
                        "type": "string",
                        "description": "Postal Code",
                        "example": "559-6993"
                      }
                    },
                    "title": "AddressDto"
                  }
                ]
              },
              "website": {
                "type": "string",
                "description": "Business Website Link",
                "example": "wwww.example.com"
              },
              "customValues": {
                "description": "Custom Values",
                "type": "array",
                "items": {
                  "type": "string"
                }
              }
            },
            "title": "BusinessDetailsDto"
          },
          "currency": {
            "type": "string",
            "description": "Currency code",
            "example": "USD"
          },
          "items": {
            "description": "An array of items for the estimate.",
            "items": {
              "type": "array"
            },
            "type": "array"
          },
          "liveMode": {
            "type": "boolean",
            "description": "livemode for estimate",
            "example": true,
            "default": true
          },
          "discount": {
            "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"
            ],
            "title": "DiscountDto"
          },
          "termsNotes": {
            "type": "string",
            "description": "Terms notes, Also supports HTML markups",
            "example": "<p>This is a default terms.</p>"
          },
          "title": {
            "type": "string",
            "description": "Title for the estimate",
            "example": "ESTIMATE"
          },
          "automaticTaxesEnabled": {
            "type": "boolean",
            "description": "Automatic taxes enabled for the Estimate",
            "example": true,
            "default": false
          },
          "meta": {
            "type": "object",
            "description": "Meta data for the estimate",
            "example": {
              "key": "value"
            }
          },
          "sendEstimateDetails": {
            "description": "When sending estimate directly while saving",
            "allOf": [
              {
                "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": {
                    "description": "sender details for invoice, valid only if invoice is not sent manually",
                    "allOf": [
                      {
                        "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"
                          }
                        },
                        "title": "InvoiceSettingsSenderConfigurationDto"
                      }
                    ]
                  },
                  "estimateName": {
                    "type": "string",
                    "description": "estimate name",
                    "example": "Estimate"
                  }
                },
                "required": [
                  "altId",
                  "altType",
                  "action",
                  "liveMode",
                  "userId"
                ],
                "title": "SendEstimateDto"
              }
            ]
          },
          "estimateNumberPrefix": {
            "type": "string",
            "description": "Prefix for the estimate number",
            "example": "EST-",
            "default": "EST-"
          },
          "attachments": {
            "description": "attachments for the invoice",
            "type": "array",
            "items": {
              "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"
              ],
              "title": "AttachmentsDto"
            }
          },
          "miscellaneousCharges": {
            "description": "miscellaneous charges for the estimate",
            "allOf": [
              {
                "type": "object",
                "properties": {
                  "charges": {
                    "description": "charges for the processing fee",
                    "items": {
                      "type": "array"
                    },
                    "type": "array"
                  },
                  "collectedMiscellaneousCharges": {
                    "type": "number",
                    "description": "collected miscellaneous charges",
                    "example": 10
                  },
                  "paidCharges": {
                    "description": "paid miscellaneous charges",
                    "type": "array",
                    "items": {
                      "type": "object",
                      "properties": {
                        "name": {
                          "type": "string",
                          "description": "name of the processing fee",
                          "example": "Processing Fee"
                        },
                        "charge": {
                          "type": "number",
                          "description": "charge for the processing fee",
                          "example": 10
                        },
                        "amount": {
                          "type": "number",
                          "description": "amount of the processing fee",
                          "example": 10
                        },
                        "_id": {
                          "type": "string",
                          "description": "id of the processing fee",
                          "example": "673d01d7d547648a8dab6211"
                        }
                      },
                      "required": [
                        "name",
                        "charge",
                        "amount",
                        "_id"
                      ],
                      "title": "ProcessingFeePaidChargeDto"
                    }
                  }
                },
                "required": [
                  "charges"
                ],
                "title": "ProcessingFeeDto"
              }
            ]
          }
        },
        "required": [
          "altId",
          "altType",
          "name",
          "businessDetails",
          "currency",
          "items",
          "discount"
        ],
        "title": "EstimateTemplatesDto"
      },
      "EstimateTemplateResponseDTO": {
        "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": {
            "description": "Business details associated with the estimate",
            "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"
                }
              ]
            },
            "allOf": [
              {
                "type": "object",
                "properties": {},
                "title": "BusinessDetails"
              }
            ]
          },
          "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": {
            "description": "Discount details for the estimate template",
            "example": {
              "type": "percentage",
              "value": 0
            },
            "allOf": [
              {
                "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"
                ],
                "title": "DiscountDto"
              }
            ]
          },
          "title": {
            "type": "string",
            "description": "Title",
            "example": "ESTIMATE"
          },
          "estimateNumberPrefix": {
            "type": "string",
            "description": "Estimate number prefix",
            "example": "EST-"
          },
          "attachments": {
            "description": "Attachments",
            "type": "array",
            "items": {
              "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"
              ],
              "title": "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>"
          }
        },
        "required": [
          "altId",
          "altType",
          "_id",
          "liveMode",
          "deleted",
          "name",
          "currency",
          "businessDetails",
          "items",
          "discount",
          "total",
          "createdAt",
          "updatedAt",
          "__v",
          "automaticTaxesEnabled"
        ],
        "title": "EstimateTemplateResponseDTO"
      },
      "BadRequestDTO": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "example": 400
          },
          "message": {
            "type": "string",
            "example": "Bad Request"
          }
        },
        "title": "BadRequestDTO"
      },
      "UnauthorizedDTO": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "example": 401
          },
          "message": {
            "type": "string",
            "example": "Invalid token: access token is invalid"
          },
          "error": {
            "type": "string",
            "example": "Unauthorized"
          }
        },
        "title": "UnauthorizedDTO"
      },
      "UnprocessableDTO": {
        "type": "object",
        "properties": {
          "statusCode": {
            "type": "number",
            "example": 422
          },
          "message": {
            "example": [
              "Unprocessable Entity"
            ],
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "error": {
            "type": "string",
            "example": "Unprocessable Entity"
          }
        },
        "title": "UnprocessableDTO"
      }
    }
  }
}
```

## Code Examples

**cURL**

```bash
curl -L -X PUT 'https://services.leadconnectorhq.com/invoices/estimate/template/<templateId>' \
  -H 'Authorization: Bearer <TOKEN>' \
  -H 'Version: v3' \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "altId": "6578278e879ad2646715ba9c",
  "name": "Home Service Estimate Template",
  "businessDetails": {
    "logoUrl": "https://example.com/logo.png",
    "name": "ABC Corp.",
    "phoneNo": "+1-214-559-6993",
    "address": "9931 Beechwood, TX",
    "website": "wwww.example.com",
    "customValues": []
  },
  "currency": "USD",
  "items": [
    []
  ],
  "liveMode": true,
  "discount": {
    "value": 10,
    "type": "percentage",
    "validOnProductIds": "[ '6579751d56f60276e5bd4154' ]"
  },
  "termsNotes": "<p>This is a default terms.</p>",
  "title": "ESTIMATE",
  "automaticTaxesEnabled": true,
  "meta": {
    "key": "value"
  },
  "sendEstimateDetails": {
    "altId": "6578278e879ad2646715ba9c",
    "liveMode": true,
    "userId": "6578278e879ad2646715ba9c",
    "sentFrom": {
      "fromName": "Alex",
      "fromEmail": "alex@example.com"
    },
    "estimateName": "Estimate"
  },
  "estimateNumberPrefix": "EST-",
  "attachments": [
    {
      "id": "6241712be68f7a98102ba272",
      "name": "Electronics.pdf",
      "url": "https://example.com/digital-delivery",
      "size": 10000
    }
  ],
  "miscellaneousCharges": {
    "charges": [
      []
    ],
    "collectedMiscellaneousCharges": 10,
    "paidCharges": [
      {
        "name": "Processing Fee",
        "charge": 10,
        "amount": 10,
        "_id": "673d01d7d547648a8dab6211"
      }
    ]
  }
}'
```

**Node.js**

```javascript
const options = {
  method: 'PUT',
  headers: {
    Authorization: 'Bearer <TOKEN>',
    Version: 'v3',
    'Content-Type': 'application/json'
  },
  body: JSON.stringify({
      "altId": "6578278e879ad2646715ba9c",
      "name": "Home Service Estimate Template",
      "businessDetails": {
        "logoUrl": "https://example.com/logo.png",
        "name": "ABC Corp.",
        "phoneNo": "+1-214-559-6993",
        "address": "9931 Beechwood, TX",
        "website": "wwww.example.com",
        "customValues": []
      },
      "currency": "USD",
      "items": [
        []
      ],
      "liveMode": true,
      "discount": {
        "value": 10,
        "type": "percentage",
        "validOnProductIds": "[ '6579751d56f60276e5bd4154' ]"
      },
      "termsNotes": "<p>This is a default terms.</p>",
      "title": "ESTIMATE",
      "automaticTaxesEnabled": true,
      "meta": {
        "key": "value"
      },
      "sendEstimateDetails": {
        "altId": "6578278e879ad2646715ba9c",
        "liveMode": true,
        "userId": "6578278e879ad2646715ba9c",
        "sentFrom": {
          "fromName": "Alex",
          "fromEmail": "alex@example.com"
        },
        "estimateName": "Estimate"
      },
      "estimateNumberPrefix": "EST-",
      "attachments": [
        {
          "id": "6241712be68f7a98102ba272",
          "name": "Electronics.pdf",
          "url": "https://example.com/digital-delivery",
          "size": 10000
        }
      ],
      "miscellaneousCharges": {
        "charges": [
          []
        ],
        "collectedMiscellaneousCharges": 10,
        "paidCharges": [
          {
            "name": "Processing Fee",
            "charge": 10,
            "amount": 10,
            "_id": "673d01d7d547648a8dab6211"
          }
        ]
      }
  })
};

try {
  const response = await fetch('https://services.leadconnectorhq.com/invoices/estimate/template/<templateId>', options);
  const data = await response.json();
  console.log(data);
} catch (error) {
  console.error(error);
}
```

**Python**

```python
import requests

url = "https://services.leadconnectorhq.com/invoices/estimate/template/{templateId}"

headers = {
    "Authorization": "Bearer <TOKEN>",
    "Version": "v3"
}

payload = {
    "altId": "6578278e879ad2646715ba9c",
    "name": "Home Service Estimate Template",
    "businessDetails": {
        "logoUrl": "https://example.com/logo.png",
        "name": "ABC Corp.",
        "phoneNo": "+1-214-559-6993",
        "address": "9931 Beechwood, TX",
        "website": "wwww.example.com",
        "customValues": []
    },
    "currency": "USD",
    "items": [
        []
    ],
    "liveMode": true,
    "discount": {
        "value": 10,
        "type": "percentage",
        "validOnProductIds": "[ '6579751d56f60276e5bd4154' ]"
    },
    "termsNotes": "<p>This is a default terms.</p>",
    "title": "ESTIMATE",
    "automaticTaxesEnabled": true,
    "meta": {
        "key": "value"
    },
    "sendEstimateDetails": {
        "altId": "6578278e879ad2646715ba9c",
        "liveMode": true,
        "userId": "6578278e879ad2646715ba9c",
        "sentFrom": {
            "fromName": "Alex",
            "fromEmail": "alex@example.com"
        },
        "estimateName": "Estimate"
    },
    "estimateNumberPrefix": "EST-",
    "attachments": [
        {
            "id": "6241712be68f7a98102ba272",
            "name": "Electronics.pdf",
            "url": "https://example.com/digital-delivery",
            "size": 10000
        }
    ],
    "miscellaneousCharges": {
        "charges": [
            []
        ],
        "collectedMiscellaneousCharges": 10,
        "paidCharges": [
            {
                "name": "Processing Fee",
                "charge": 10,
                "amount": 10,
                "_id": "673d01d7d547648a8dab6211"
            }
        ]
    }
}

response = requests.put(url, json=payload, headers=headers)
print(response.json())
```

**PHP**

```php
<?php
$curl = curl_init();

curl_setopt_array($curl, [
  CURLOPT_URL => 'https://services.leadconnectorhq.com/invoices/estimate/template/<templateId>',
  CURLOPT_RETURNTRANSFER => true,
  CURLOPT_CUSTOMREQUEST => 'PUT',
  CURLOPT_HTTPHEADER => [
    'Authorization: Bearer <TOKEN>',
    'Version: v3',
    'Content-Type: application/json',
  ],
  CURLOPT_POSTFIELDS => '{
  "altId": "6578278e879ad2646715ba9c",
  "name": "Home Service Estimate Template",
  "businessDetails": {
    "logoUrl": "https://example.com/logo.png",
    "name": "ABC Corp.",
    "phoneNo": "+1-214-559-6993",
    "address": "9931 Beechwood, TX",
    "website": "wwww.example.com",
    "customValues": []
  },
  "currency": "USD",
  "items": [
    []
  ],
  "liveMode": true,
  "discount": {
    "value": 10,
    "type": "percentage",
    "validOnProductIds": "[ '6579751d56f60276e5bd4154' ]"
  },
  "termsNotes": "<p>This is a default terms.</p>",
  "title": "ESTIMATE",
  "automaticTaxesEnabled": true,
  "meta": {
    "key": "value"
  },
  "sendEstimateDetails": {
    "altId": "6578278e879ad2646715ba9c",
    "liveMode": true,
    "userId": "6578278e879ad2646715ba9c",
    "sentFrom": {
      "fromName": "Alex",
      "fromEmail": "alex@example.com"
    },
    "estimateName": "Estimate"
  },
  "estimateNumberPrefix": "EST-",
  "attachments": [
    {
      "id": "6241712be68f7a98102ba272",
      "name": "Electronics.pdf",
      "url": "https://example.com/digital-delivery",
      "size": 10000
    }
  ],
  "miscellaneousCharges": {
    "charges": [
      []
    ],
    "collectedMiscellaneousCharges": 10,
    "paidCharges": [
      {
        "name": "Processing Fee",
        "charge": 10,
        "amount": 10,
        "_id": "673d01d7d547648a8dab6211"
      }
    ]
  }
}',
]);

$response = curl_exec($curl);
curl_close($curl);
echo $response;
```

**Java**

```java
HttpResponse<String> response = Unirest
  .put("https://services.leadconnectorhq.com/invoices/estimate/template/<templateId>")
  .header("Authorization", "Bearer <TOKEN>")
  .header("Version", "v3")
  .header("Content-Type", "application/json")
  .body("{\"altId\":\"6578278e879ad2646715ba9c\",\"name\":\"Home Service Estimate Template\",\"businessDetails\":{\"logoUrl\":\"https://example.com/logo.png\",\"name\":\"ABC Corp.\",\"phoneNo\":\"+1-214-559-6993\",\"address\":\"9931 Beechwood, TX\",\"website\":\"wwww.example.com\",\"customValues\":[]},\"currency\":\"USD\",\"items\":[[]],\"liveMode\":true,\"discount\":{\"value\":10,\"type\":\"percentage\",\"validOnProductIds\":\"[ '6579751d56f60276e5bd4154' ]\"},\"termsNotes\":\"<p>This is a default terms.</p>\",\"title\":\"ESTIMATE\",\"automaticTaxesEnabled\":true,\"meta\":{\"key\":\"value\"},\"sendEstimateDetails\":{\"altId\":\"6578278e879ad2646715ba9c\",\"liveMode\":true,\"userId\":\"6578278e879ad2646715ba9c\",\"sentFrom\":{\"fromName\":\"Alex\",\"fromEmail\":\"alex@example.com\"},\"estimateName\":\"Estimate\"},\"estimateNumberPrefix\":\"EST-\",\"attachments\":[{\"id\":\"6241712be68f7a98102ba272\",\"name\":\"Electronics.pdf\",\"url\":\"https://example.com/digital-delivery\",\"size\":10000}],\"miscellaneousCharges\":{\"charges\":[[]],\"collectedMiscellaneousCharges\":10,\"paidCharges\":[{\"name\":\"Processing Fee\",\"charge\":10,\"amount\":10,\"_id\":\"673d01d7d547648a8dab6211\"}]}}")
  .asString();
```

**Go**

```go
package main

import (
  "fmt"
  "net/http"
  "io"
  "strings"
)

func main() {
  url := "https://services.leadconnectorhq.com/invoices/estimate/template/<templateId>"
  payload := strings.NewReader(`{
  "altId": "6578278e879ad2646715ba9c",
  "name": "Home Service Estimate Template",
  "businessDetails": {
    "logoUrl": "https://example.com/logo.png",
    "name": "ABC Corp.",
    "phoneNo": "+1-214-559-6993",
    "address": "9931 Beechwood, TX",
    "website": "wwww.example.com",
    "customValues": []
  },
  "currency": "USD",
  "items": [
    []
  ],
  "liveMode": true,
  "discount": {
    "value": 10,
    "type": "percentage",
    "validOnProductIds": "[ '6579751d56f60276e5bd4154' ]"
  },
  "termsNotes": "<p>This is a default terms.</p>",
  "title": "ESTIMATE",
  "automaticTaxesEnabled": true,
  "meta": {
    "key": "value"
  },
  "sendEstimateDetails": {
    "altId": "6578278e879ad2646715ba9c",
    "liveMode": true,
    "userId": "6578278e879ad2646715ba9c",
    "sentFrom": {
      "fromName": "Alex",
      "fromEmail": "alex@example.com"
    },
    "estimateName": "Estimate"
  },
  "estimateNumberPrefix": "EST-",
  "attachments": [
    {
      "id": "6241712be68f7a98102ba272",
      "name": "Electronics.pdf",
      "url": "https://example.com/digital-delivery",
      "size": 10000
    }
  ],
  "miscellaneousCharges": {
    "charges": [
      []
    ],
    "collectedMiscellaneousCharges": 10,
    "paidCharges": [
      {
        "name": "Processing Fee",
        "charge": 10,
        "amount": 10,
        "_id": "673d01d7d547648a8dab6211"
      }
    ]
  }
}`)
  req, _ := http.NewRequest("PUT", url, payload)
  req.Header.Add("Authorization", "Bearer <TOKEN>")
  req.Header.Add("Version", "v3")

  res, _ := http.DefaultClient.Do(req)
  defer res.Body.Close()
  body, _ := io.ReadAll(res.Body)
  fmt.Println(string(body))
}
```

**Ruby**

```ruby
require 'uri'
require 'net/http'

url = URI("https://services.leadconnectorhq.com/invoices/estimate/template/<templateId>")

http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true

request = Net::HTTP::Put.new(url)
request["Authorization"] = "Bearer <TOKEN>"
request["Version"] = "v3"
request["Content-Type"] = "application/json"
request.body = '{
  "altId": "6578278e879ad2646715ba9c",
  "name": "Home Service Estimate Template",
  "businessDetails": {
    "logoUrl": "https://example.com/logo.png",
    "name": "ABC Corp.",
    "phoneNo": "+1-214-559-6993",
    "address": "9931 Beechwood, TX",
    "website": "wwww.example.com",
    "customValues": []
  },
  "currency": "USD",
  "items": [
    []
  ],
  "liveMode": true,
  "discount": {
    "value": 10,
    "type": "percentage",
    "validOnProductIds": "[ '6579751d56f60276e5bd4154' ]"
  },
  "termsNotes": "<p>This is a default terms.</p>",
  "title": "ESTIMATE",
  "automaticTaxesEnabled": true,
  "meta": {
    "key": "value"
  },
  "sendEstimateDetails": {
    "altId": "6578278e879ad2646715ba9c",
    "liveMode": true,
    "userId": "6578278e879ad2646715ba9c",
    "sentFrom": {
      "fromName": "Alex",
      "fromEmail": "alex@example.com"
    },
    "estimateName": "Estimate"
  },
  "estimateNumberPrefix": "EST-",
  "attachments": [
    {
      "id": "6241712be68f7a98102ba272",
      "name": "Electronics.pdf",
      "url": "https://example.com/digital-delivery",
      "size": 10000
    }
  ],
  "miscellaneousCharges": {
    "charges": [
      []
    ],
    "collectedMiscellaneousCharges": 10,
    "paidCharges": [
      {
        "name": "Processing Fee",
        "charge": 10,
        "amount": 10,
        "_id": "673d01d7d547648a8dab6211"
      }
    ]
  }
}'

response = http.request(request)
puts response.read_body
```

**PowerShell**

```powershell
$headers = @{
  "Authorization" = "Bearer <TOKEN>"
  "Version" = "v3"
}

$body = '{
  "altId": "6578278e879ad2646715ba9c",
  "name": "Home Service Estimate Template",
  "businessDetails": {
    "logoUrl": "https://example.com/logo.png",
    "name": "ABC Corp.",
    "phoneNo": "+1-214-559-6993",
    "address": "9931 Beechwood, TX",
    "website": "wwww.example.com",
    "customValues": []
  },
  "currency": "USD",
  "items": [
    []
  ],
  "liveMode": true,
  "discount": {
    "value": 10,
    "type": "percentage",
    "validOnProductIds": "[ '6579751d56f60276e5bd4154' ]"
  },
  "termsNotes": "<p>This is a default terms.</p>",
  "title": "ESTIMATE",
  "automaticTaxesEnabled": true,
  "meta": {
    "key": "value"
  },
  "sendEstimateDetails": {
    "altId": "6578278e879ad2646715ba9c",
    "liveMode": true,
    "userId": "6578278e879ad2646715ba9c",
    "sentFrom": {
      "fromName": "Alex",
      "fromEmail": "alex@example.com"
    },
    "estimateName": "Estimate"
  },
  "estimateNumberPrefix": "EST-",
  "attachments": [
    {
      "id": "6241712be68f7a98102ba272",
      "name": "Electronics.pdf",
      "url": "https://example.com/digital-delivery",
      "size": 10000
    }
  ],
  "miscellaneousCharges": {
    "charges": [
      []
    ],
    "collectedMiscellaneousCharges": 10,
    "paidCharges": [
      {
        "name": "Processing Fee",
        "charge": 10,
        "amount": 10,
        "_id": "673d01d7d547648a8dab6211"
      }
    ]
  }
}'

$response = Invoke-RestMethod -Uri 'https://services.leadconnectorhq.com/invoices/estimate/template/<templateId>' -Method 'PUT' -Headers $headers -Body $body -ContentType 'application/json'
$response | ConvertTo-Json
```
