> ## 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.

# Update template

> API to update an template by template id



## OpenAPI

````yaml /api-reference/invoices/openapi.json put /invoices/template/{templateId}
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/template/{templateId}:
    put:
      tags:
        - Template
      summary: Update template
      description: API to update an template by template id
      operationId: update-invoice-template
      parameters:
        - name: Version
          in: header
          description: API Version
          required: true
          schema:
            type: string
            enum:
              - '2021-07-28'
        - name: templateId
          required: true
          in: path
          description: Template Id
          schema:
            example: 6578278e879ad2646715ba9c
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/UpdateInvoiceTemplateDto'
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/UpdateInvoiceTemplateResponseDto'
        '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/template.write
        - Agency-Access:
            - invoices/template.write
components:
  schemas:
    UpdateInvoiceTemplateDto:
      type: object
      properties:
        altId:
          type: string
          description: location Id / company Id based on altType
          example: 6578278e879ad2646715ba9c
        altType:
          type: string
          description: Alt Type
          enum:
            - location
          example: location
        internal:
          type: boolean
        name:
          type: string
          description: Name of the template
          example: New Template
        businessDetails:
          $ref: '#/components/schemas/BusinessDetailsDto'
        currency:
          type: string
        items:
          type: array
          items:
            $ref: '#/components/schemas/InvoiceItemDto'
        discount:
          $ref: '#/components/schemas/DiscountDto'
        termsNotes:
          type: string
        title:
          type: string
          description: Template title
          example: New Template
        miscellaneousCharges:
          $ref: '#/components/schemas/ProcessingFeeDto'
      required:
        - altId
        - altType
        - name
        - businessDetails
        - currency
        - items
    UpdateInvoiceTemplateResponseDto:
      type: object
      properties:
        _id:
          type: string
          description: Template Id
          example: 6578278e879ad2646715ba9c
        altId:
          type: string
          description: Location Id or Agency Id
          example: 6578278e879ad2646715ba9c
        altType:
          type: string
          enum:
            - location
        name:
          type: string
          description: Name of the Template
          example: New Template
        businessDetails:
          $ref: '#/components/schemas/BusinessDetailsDto'
          example:
            name: Alex
            address:
              addressLine1: 9931 Beechwood
              city: St. Houston
              state: TX
              countryCode: USA
              postalCode: 559-6993
            phoneNo: +1-214-559-6993
            website: www.example.com
        currency:
          type: string
          description: Currency
          example: USD
        discount:
          $ref: '#/components/schemas/DiscountDto'
          example:
            type: percentage
            value: 0
        items:
          description: Invoice Items
          example:
            - taxes: []
              _id: c6tZZU0rJBf30ZXx9Gli
              productId: c6tZZU0rJBf30ZXx9Gli
              priceId: c6tZZU0rJBf30ZXx9Gli
              currency: USD
              name: Macbook Pro
              qty: 1
              amount: 999
          type: array
          items:
            type: string
        invoiceNumberPrefix:
          type: string
          description: prefix for invoice number
          example: INV-
        total:
          type: number
          description: Total Amount
          example: 999
        createdAt:
          type: string
          description: created at
          example: '2023-12-12T09:27:42.355Z'
        updatedAt:
          type: string
          description: updated at
          example: '2023-12-12T09:27:42.355Z'
      required:
        - _id
        - altId
        - altType
        - name
        - businessDetails
        - currency
        - items
        - total
        - createdAt
        - updatedAt
    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
    BusinessDetailsDto:
      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:
          $ref: '#/components/schemas/AddressDto'
          example: 9931 Beechwood, TX
        website:
          type: string
          description: Business Website Link
          example: wwww.example.com
        customValues:
          description: Custom Values
          type: array
          items:
            type: string
    InvoiceItemDto:
      type: object
      properties:
        name:
          type: string
          description: Invoice Item Name
          example: ABC Product
        description:
          type: string
          description: Invoice descriptions
          example: ABC Corp.
        productId:
          type: string
          description: Product Id
          example: 6578278e879ad2646715ba9c
        priceId:
          type: string
          description: Price Id
          example: 6578278e879ad2646715ba9c
        currency:
          type: string
          description: Currency
          example: USD
        amount:
          type: number
          description: Product amount
          example: 999
        qty:
          type: number
          description: Product Quantity
          example: 1
        taxes:
          description: Tax
          type: array
          items:
            $ref: '#/components/schemas/ItemTaxDto'
        automaticTaxCategoryId:
          type: string
          description: Tax category id for calculating automatic tax
          example: 6578278e879ad2646715ba9c
        isSetupFeeItem:
          type: boolean
          description: >-
            Setupfee item, only created when 1st invoice of recurring schedule
            is generated
        type:
          type: string
          description: Price type of the item
          example: one_time
          enum:
            - one_time
            - recurring
        taxInclusive:
          type: boolean
          description: true if item amount is tax inclusive
          example: true
          default: false
      required:
        - name
        - currency
        - amount
        - qty
    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
    ProcessingFeeDto:
      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:
            $ref: '#/components/schemas/ProcessingFeePaidChargeDto'
      required:
        - charges
    AddressDto:
      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
    ItemTaxDto:
      type: object
      properties:
        _id:
          type: string
        name:
          type: string
        rate:
          type: number
        calculation:
          type: string
          enum:
            - exclusive
        description:
          type: string
        taxId:
          type: string
      required:
        - _id
        - name
        - rate
    ProcessingFeePaidChargeDto:
      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

````