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

# Update an Account

> Update an `Account` by ID.

This endpoint requires the `edit_account` permission



## OpenAPI

````yaml /api-reference/openapi.json patch /v1/accounts/{id}
openapi: 3.0.3
info:
  title: Horizon API V1
  version: '1.0'
  contact:
    name: Tread
    url: https://tread.io
    email: developers@tread.io
  description: >-
    This is the Version 1 implementation.


    When in doubt we default to the practices outlined
    [here](https://www.vinaysahni.com/best-practices-for-a-pragmatic-restful-api#advanced-queries)
  license:
    name: Private
    url: https://tread.io
servers:
  - description: production
    url: https://api.tread-horizon.com
security:
  - bearerAuth: []
tags:
  - name: Projects
  - name: Orders
  - name: Loads
  - name: Jobs
  - name: JobAssignments
  - name: ApprovalAssignments
  - name: Equipment
  - name: FuelSurcharges
  - name: Materials
  - name: Accounts
  - name: Tickets
  - name: Users
  - name: Sites
  - name: Companies
  - name: Departments
  - name: Rates
  - name: Services
  - name: EquipmentType
  - name: FileAttachments
  - name: MaterialType
  - name: LineItemType
  - name: DriverStateEvent
  - name: Authentication
  - name: IamRoles
  - name: Typeaheads
  - name: Integrations
  - name: Reflection
  - name: LoadCycles
  - name: AddOns
  - name: ServiceClass
  - name: Invoices
  - name: JobSummaries
  - name: LoadSummaries
  - name: CompanyShares
  - name: UserDevicePermission
  - name: Drivers
  - name: Settlements
  - name: LocationHistories
  - name: Telematics
  - name: OmniReports
  - name: DriverDays
  - name: Agave
  - name: AddOnCharges
  - name: ResourceUsageLogs
  - name: ResourceScopes
  - name: TravelledDistances
  - name: MaterialRates
  - name: CompanyDayJobStats
  - name: KMLFiles
  - name: AutoAddOnAssignments
  - name: SiteRateSchedules
  - name: TwilioIntegrations
  - name: Foremen
  - name: AccountExternalTruckIdentifier
  - name: GeofenceTriggers
  - name: Labels
  - name: Compliance
  - name: ComplianceDocuments
paths:
  /v1/accounts/{id}:
    parameters:
      - schema:
          type: string
        name: id
        in: path
        required: true
        description: Account ID
      - $ref: '#/components/parameters/Accept-Language'
    patch:
      tags:
        - Accounts
      summary: Update an Account
      description: |-
        Update an `Account` by ID.

        This endpoint requires the `edit_account` permission
      operationId: patch-v1-accounts-id
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/Account-Update'
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                required:
                  - data
                properties:
                  data:
                    $ref: '#/components/schemas/Account-Read'
        '400':
          $ref: '#/components/responses/Error'
        '401':
          $ref: '#/components/responses/UnauthenticatedError'
        '403':
          $ref: '#/components/responses/Error'
        '404':
          $ref: '#/components/responses/Error'
        '406':
          $ref: '#/components/responses/Error'
        '415':
          $ref: '#/components/responses/Error'
        '422':
          $ref: '#/components/responses/ModelError'
components:
  parameters:
    Accept-Language:
      name: Accept-Language
      in: header
      schema:
        type: string
        default: en
        example: en
      description: >-
        The Accept-Language request HTTP header indicates the natural language
        and locale that the client prefers. 
  schemas:
    Account-Update:
      title: Account-Update
      x-stoplight:
        id: 2zrntg5xhcmsd
      description: Update model for `Account`
      allOf:
        - type: object
          properties:
            name:
              type: string
              x-stoplight:
                id: cv2ymke8sutek
              description: Account name
            department:
              type: string
              x-stoplight:
                id: wtt5wqixu46yn
              description: Department
              deprecated: true
              nullable: true
            department_id:
              type: string
              x-stoplight:
                id: tkd8y8kgx83mc
              format: uuid
              description: |-
                The ID of the associated **Department**.

                This should be used instead of `department`.
              nullable: true
            primary_contact:
              $ref: '#/components/schemas/Contact-Update'
            billing_contact:
              $ref: '#/components/schemas/Contact-Update'
            address:
              $ref: '#/components/schemas/Address-Update'
            billing_address:
              $ref: '#/components/schemas/Address-Update'
            notes:
              type: string
              x-stoplight:
                id: tqs5b4rdilyyr
              description: Notes
              nullable: true
            account_types:
              type: array
              x-stoplight:
                id: o8crnsajrp9ii
              description: Account type allowing for multiple values
              items:
                $ref: '#/components/schemas/AccountType'
            external_id:
              type: string
              x-stoplight:
                id: uormrtrev82c5
              description: Identifier used to associate an account to any external system
              nullable: true
            accounting_id:
              type: string
              x-stoplight:
                id: uosmrurev83c5
              description: >-
                The accounting ID of the Account mapping to any accounting
                system
              nullable: true
            truck_count:
              type: integer
              x-stoplight:
                id: wlti4u29w4els
              description: >-
                The allowable number of trucks that is dispatchable to the
                customer of this account.
              default: 0
            auto_accept_orders:
              type: boolean
              x-stoplight:
                id: r2hvfvnc54wx9
              default: false
              description: >-
                Indicates whether orders and their jobs will be accepted
                automatcially into the vendor account.
            connected_account:
              $ref: '#/components/schemas/Account-Update-Connected'
            label_ids:
              type: array
              x-stoplight:
                id: h6l1mjd3to0yg
              description: Array of Label IDs to assign to this Account
              items:
                type: string
                format: uuid
        - $ref: '#/components/schemas/AutoAddOn-BulkAssign'
    Account-Read:
      title: Account-Read
      x-stoplight:
        id: wei0biagg591t
      allOf:
        - $ref: '#/components/schemas/Account-Read-Nested'
        - $ref: '#/components/schemas/Timestamps'
        - type: object
          required:
            - notes
            - truck_count
            - auto_accept_orders
            - managed
            - labels
          properties:
            primary_contact:
              $ref: '#/components/schemas/Contact-Read-Nested'
            address:
              $ref: '#/components/schemas/Address-Read-Nested'
            notes:
              type: string
              x-stoplight:
                id: 2sjpg062n562q
              description: Notes
              nullable: true
            truck_count:
              type: integer
              x-stoplight:
                id: 3ha8rwl257389
              description: >-
                The allowable number of trucks that is dispatchable to the
                customer of this account.
            auto_accept_orders:
              type: boolean
              x-stoplight:
                id: ktqejg58pns0n
              default: false
              description: >-
                Indicates whether orders and their jobs will be accepted
                automatcially into the vendor account.
            connected_account:
              $ref: '#/components/schemas/Account-Connected-Read-Nested'
            managed:
              type: boolean
              x-stoplight:
                id: cbaejg58pns2s
            department:
              $ref: '#/components/schemas/Department-Read-Nested'
            labels:
              type: array
              items:
                $ref: '#/components/schemas/Label-Read-Nested'
              description: Labels assigned to this account
    Contact-Update:
      title: Contact-Update
      x-stoplight:
        id: p2ny8u55sfpcx
      type: object
      properties:
        name:
          type: string
          x-stoplight:
            id: wm2na5bv2uvvv
        email:
          x-stoplight:
            id: mdv25imtbstfh
          type: string
        phone:
          type: string
          x-stoplight:
            id: rtf4rqlgwt35i
          example: '+18885551234'
      additionalProperties: false
    Address-Update:
      title: Address-Update
      x-stoplight:
        id: 9btd83m0o0tsa
      properties:
        thoroughfare:
          type: string
          description: Street address
          example: 123 Fake St.
        premise:
          type: string
          description: Apartment, Suite, Box number, etc.
          example: 3rd Floor
        locality:
          type: string
          description: City / Town
          example: New York
        administrative_area:
          type: string
          description: State / Province / Region (ISO code when available)
          example: NY
        postal_code:
          type: string
          description: Postal code / ZIP Code
          example: '10011'
        country:
          type: string
          minLength: 2
          maxLength: 2
          pattern: ^[A-Z]{2}
          example: US
          description: 2 character country ISO code
        lat:
          type: string
          x-stoplight:
            id: 5uu3ex2lbmyzj
          description: |-
            latitude of the `Address`. 

            Must be a stringified number between -90 and 90 inclusive.

            Required if `lon` is present.
        lon:
          type: string
          x-stoplight:
            id: y8xd9dp6rwfeu
          description: |-
            longitude of the `Address`. 

            Must be a stringified number between -180 and 180 inclusive.

            Required if `lat` is present.
        place_id:
          type: string
          x-stoplight:
            id: ujv5qpg067ycc
          description: NextBillion placeID
        _destroy:
          type: integer
          x-stoplight:
            id: 48a0is0umjabv
          description: >-
            If this is provided with value of `1` like so `_destroy: 1` then
            this `Address` will be deleted. The `id` must be set.
      type: object
      additionalProperties: false
    AccountType:
      title: AccountType
      x-stoplight:
        id: i4vfmd4rwrq8p
      enum:
        - customer
        - vendor
      example: customer
    Account-Update-Connected:
      title: Account-Update
      x-stoplight:
        id: tqoelbcljuj2k
      type: object
      description: Update model for `Account`
      properties:
        truck_count:
          type: integer
          description: >-
            The allowable number of trucks that is dispatchable to the customer
            of this account.
          default: 0
      additionalProperties: false
    AutoAddOn-BulkAssign:
      title: AutoAddOn-BulkAssign
      x-stoplight:
        id: 0zlb8y4dqn6iu
      type: object
      description: >-
        Note: `auto_add_on_account_type` is `required` when assigning to an
        `Account`
      properties:
        auto_add_on_account_type:
          $ref: '#/components/schemas/AccountType'
        additional_auto_add_on_ids:
          type: array
          x-stoplight:
            id: 6pls2iqathkik
          items:
            x-stoplight:
              id: rrt11kfb86o87
            type: string
            format: uuid
      additionalProperties: false
    Account-Read-Nested:
      title: Account-Read-Nested
      x-stoplight:
        id: zo8r3gsz1tm5h
      allOf:
        - $ref: '#/components/schemas/Identifier'
        - $ref: '#/components/schemas/Discardable'
        - type: object
          x-stoplight:
            id: gl7hua7pv8xka
          required:
            - name
            - account_types
            - external_id
            - accounting_id
            - company
            - schedule_on
          properties:
            name:
              type: string
              x-stoplight:
                id: a7g065w5byfcf
            account_types:
              type: array
              x-stoplight:
                id: a0e9c3lpr1wad
              items:
                $ref: '#/components/schemas/AccountType'
            external_id:
              type: string
              x-stoplight:
                id: yfrec4y0a90cb
              nullable: true
            accounting_id:
              type: string
              x-stoplight:
                id: yfsec5y0a91cb
              nullable: true
            company:
              type: object
              x-stoplight:
                id: 9loqtu14mvlnq
              required:
                - id
              properties:
                id:
                  type: string
                  x-stoplight:
                    id: udjkdjrz08pzr
                  format: uuid
            billing_address:
              $ref: '#/components/schemas/Address-Read-Nested'
            schedule_on:
              type: boolean
              x-stoplight:
                id: 0g9kx77zym4ok
            connected_company:
              $ref: '#/components/schemas/Company-Read-Nested'
            billing_contact:
              $ref: '#/components/schemas/Contact-Read-Nested'
    Timestamps:
      title: Timestamps
      x-stoplight:
        id: t82ecgfu0oj00
      type: object
      required:
        - created_at
        - updated_at
      properties:
        created_at:
          type: string
          x-stoplight:
            id: gjj950jpq0ga9
          format: date-time
          description: ISO8601 timestamp with local timezone
        updated_at:
          type: string
          x-stoplight:
            id: bwcuyfwc7aj0e
          format: date-time
          description: ISO8601 timestamp with local timezone
      additionalProperties: false
    Contact-Read-Nested:
      title: Contact-Read-Nested
      x-stoplight:
        id: 3u6d8qhsz5ehn
      allOf:
        - $ref: '#/components/schemas/Identifier'
        - type: object
          required:
            - name
            - email
            - phone
          properties:
            name:
              type: string
              x-stoplight:
                id: sd80y9pbgvkok
              nullable: true
            email:
              type: string
              x-stoplight:
                id: 883fmt34pdeaj
              nullable: true
            phone:
              type: string
              x-stoplight:
                id: wdtqyju4t4u06
              example: '+18885551234'
              nullable: true
      description: ''
    Address-Read-Nested:
      title: Address-Read-Nested
      x-stoplight:
        id: cvym2dzuo375q
      allOf:
        - $ref: '#/components/schemas/Identifier'
        - $ref: '#/components/schemas/Address-Read'
    Account-Connected-Read-Nested:
      title: Account-Connected-Read-Nested
      x-stoplight:
        id: pg8wjapp9i57b
      allOf:
        - $ref: '#/components/schemas/Identifier'
        - $ref: '#/components/schemas/Discardable'
        - type: object
          x-stoplight:
            id: afxdwofm2lvk9
          required:
            - account_types
            - truck_count
            - auto_accept_orders
          properties:
            account_types:
              type: array
              x-stoplight:
                id: fuy2f5ufr4t1y
              items:
                $ref: '#/components/schemas/AccountType'
            truck_count:
              type: integer
              x-stoplight:
                id: qy4yfietl0bn9
            auto_accept_orders:
              type: boolean
              x-stoplight:
                id: 9i9aevgy5ke86
      description: ''
    Department-Read-Nested:
      title: Department-Read-Nested
      x-stoplight:
        id: gv9tfg4scr2yx
      allOf:
        - $ref: '#/components/schemas/Identifier'
        - type: object
          x-stoplight:
            id: 4y3gfdgq1brqf
          properties:
            name:
              type: string
              x-stoplight:
                id: 3718c2tvwwqsn
              description: Department name.
          required:
            - name
    Label-Read-Nested:
      title: Label-Read-Nested
      x-stoplight:
        id: lbl1readnest01
      allOf:
        - $ref: '#/components/schemas/Identifier'
        - type: object
          properties:
            name:
              type: string
              x-stoplight:
                id: lbl1nestnm0001
              description: Label name
            color:
              type: string
              x-stoplight:
                id: lbl1nestcol001
              description: Hex color code for the label
              pattern: ^#[0-9A-Fa-f]{6}$
          required:
            - name
            - color
    Error-Response:
      title: Error-Response
      x-stoplight:
        id: 52cydhphee3qe
      type: object
      required:
        - error
      properties:
        error:
          $ref: '#/components/schemas/Error'
      additionalProperties: false
    UnauthenticatedError-Response:
      title: UnauthenticatedError-Response
      x-stoplight:
        id: o477eph7ttbzt
      type: object
      required:
        - error
      properties:
        error:
          $ref: '#/components/schemas/UnauthenticatedError'
      additionalProperties: false
    ModelError-Response:
      title: ModelError-Response
      x-stoplight:
        id: payf9ndh3l6np
      type: object
      required:
        - error
      properties:
        error:
          $ref: '#/components/schemas/ModelError'
      additionalProperties: false
    Identifier:
      title: Identifier
      x-stoplight:
        id: gnd39lue5v7ol
      type: object
      required:
        - id
      properties:
        id:
          type: string
          x-stoplight:
            id: 2e38hjk4zd58m
          format: uuid
      additionalProperties: false
    Discardable:
      title: Discardable
      x-stoplight:
        id: 46axlb8u5wjay
      type: object
      required:
        - discarded_at
      properties:
        discarded_at:
          type: string
          x-stoplight:
            id: cy8t6fecoyxbo
          format: date-time
          nullable: true
      additionalProperties: false
    Company-Read-Nested:
      title: Company-Read-Nested
      x-stoplight:
        id: cb2kn77qmf1l7
      description: Compact Company model for nested reads.
      allOf:
        - $ref: '#/components/schemas/Identifier'
          x-stoplight:
            id: jwsufva4znm91
        - $ref: '#/components/schemas/TreadId'
        - type: object
          properties:
            legal_name:
              type: string
              x-stoplight:
                id: yc10t8hieecwk
              description: The Company's name. Must be globally unique.
            company_type:
              $ref: '#/components/schemas/CompanyType'
          required:
            - legal_name
            - company_type
    Address-Read:
      title: Address-Read
      x-stoplight:
        id: v1mcd2qgns2tf
      type: object
      required:
        - thoroughfare
        - premise
        - locality
        - administrative_area
        - postal_code
        - country
        - lat
        - lon
        - place_id
      properties:
        thoroughfare:
          type: string
          x-stoplight:
            id: 8wrr7qkc9ilqn
        premise:
          type: string
          x-stoplight:
            id: z4jth408out1q
          nullable: true
        locality:
          type: string
          x-stoplight:
            id: kfby6wqpgvxbz
        administrative_area:
          type: string
          x-stoplight:
            id: c9bkrloxf4t8d
        postal_code:
          type: string
          x-stoplight:
            id: 7zq51k1mof3o3
        country:
          type: string
          x-stoplight:
            id: iydw9q619ya01
          pattern: ^[A-Z]{2}
          example: US
          minLength: 2
          maxLength: 2
        lat:
          type: string
          x-stoplight:
            id: kqu1qtf9rivh1
          description: |-
            latitude of the `Address`. 

            Must be a stringified number between -90 and 90 inclusive.

            Required if `lon` is present.
          nullable: true
        lon:
          type: string
          x-stoplight:
            id: oly2yabkzpk9g
          description: |-
            longitude of the `Address`. 

            Must be a stringified number between -180 and 180 inclusive.

            Required if `lat` is present.
          nullable: true
        place_id:
          type: string
          x-stoplight:
            id: im1fdq7qqxdij
          description: NextBillion placeID
          nullable: true
      additionalProperties: false
    Error:
      title: Error
      x-stoplight:
        id: 3g57kkik3l464
      type: object
      description: An Error.
      required:
        - code
      properties:
        code:
          type: string
          x-stoplight:
            id: 7o9x1t8v0bgfo
      additionalProperties: false
    UnauthenticatedError:
      title: UnauthenticatedError
      x-stoplight:
        id: 202o69l0fs40h
      allOf:
        - $ref: '#/components/schemas/Error'
        - type: object
          x-stoplight:
            id: tg10dt7s0l6bw
          properties:
            error_type:
              type: string
              x-stoplight:
                id: wvq8c0qsym4hz
          required:
            - error_type
    ModelError:
      title: ModelError
      x-stoplight:
        id: nhp6714o4j1qt
      description: A Model-specific error
      allOf:
        - $ref: '#/components/schemas/Error'
        - type: object
          required:
            - errors
          properties:
            errors:
              type: array
              x-stoplight:
                id: m4ul9vcq2deh6
              items:
                $ref: '#/components/schemas/ModelError-Item'
    TreadId:
      title: TreadId
      x-stoplight:
        id: 43k4t5tl359m4
      type: object
      required:
        - tread_id
      properties:
        tread_id:
          type: string
          x-stoplight:
            id: zi3ld7djflw6f
          pattern: ^[0-9A-F]{6}$
          minLength: 6
          maxLength: 6
          example: ABC123
          description: Tread ID
      additionalProperties: false
    CompanyType:
      title: CompanyType
      x-stoplight:
        id: dkzo7gjbtb1b3
      enum:
        - broker
        - contractor
        - hauler
        - owner_operator
        - producer
        - super
      example: hauler
      description: Company Type
    ModelError-Item:
      title: ModelError-Item
      x-stoplight:
        id: b93chwval2t8d
      type: object
      required:
        - model
        - field
        - message
      properties:
        model:
          type: string
          x-stoplight:
            id: 30myfyjkno8ao
          description: The Model associated with this Error
        field:
          type: string
          x-stoplight:
            id: 8gl4ed3uxhdws
          description: The field associated with this Error
        message:
          type: string
          x-stoplight:
            id: bmgbrtmw17qsj
          description: The Error message
      additionalProperties: false
  responses:
    Error:
      description: Error response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/Error-Response'
            type: object
    UnauthenticatedError:
      description: Example response
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/UnauthenticatedError-Response'
            type: object
    ModelError:
      description: ''
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ModelError-Response'
            type: object
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: JWT

````