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

# Bulk Update Multiple Transactions

> Update multiple transactions. The maximum number of transactions that can be updated at once is 100.



## OpenAPI

````yaml PUT /v0/source-accounts/{source_account_id}/transactions
openapi: 3.1.0
info:
  title: Teal API
  version: '0.1'
servers:
  - url: https://api.sandbox.teal.dev
    description: Sandbox
  - url: https://api.teal.dev
    description: Production
security: []
paths:
  /v0/source-accounts/{source_account_id}/transactions:
    put:
      tags:
        - Transactions
      summary: Bulk Update Multiple Transactions
      description: |-
        Update multiple transactions. The maximum number of transactions
        that can be updated at once is 100.
      operationId: >-
        update_multiple_transactions_v0_source_accounts__source_account_id__transactions_put
      parameters:
        - name: source_account_id
          in: path
          required: true
          schema:
            type: string
            description: The Source Account ID.
            title: Source Account Id
          description: The Source Account ID.
        - name: teal-instance-id
          in: header
          required: true
          schema:
            type: string
            description: The Teal instance ID
            title: Teal-Instance-Id
          description: The Teal instance ID
        - name: modified-by
          in: header
          required: false
          schema:
            anyOf:
              - type: string
              - type: 'null'
            description: An optional identifier for audit logging.
            title: Modified-By
          description: An optional identifier for audit logging.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/TransactionUpdateMultiple'
      responses:
        '204':
          description: Successful Response
        '403':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TealErrorResponse'
          description: Forbidden
        '404':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TealErrorResponse'
          description: Not Found
        '422':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TealErrorResponse'
          description: Unprocessable Content
        '503':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TealErrorResponse'
          description: Service Unavailable
      security:
        - OAuth2PasswordBearer: []
components:
  schemas:
    TransactionUpdateMultiple:
      properties:
        transactions:
          items:
            $ref: '#/components/schemas/TransactionUpdateWithId'
          type: array
          maxItems: 100
          title: Transactions
          description: List of transactions to update. Limit 100.
      type: object
      required:
        - transactions
      title: TransactionUpdateMultiple
    TealErrorResponse:
      properties:
        message:
          anyOf:
            - type: string
            - type: 'null'
          title: Message
          description: A description of the error for API developers.
        data:
          title: Data
          description: Data associated with the error.
        display_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Display Message
          description: A description of the error for end users.
        error_code:
          anyOf:
            - $ref: '#/components/schemas/TealErrorCode'
            - type: 'null'
          description: Error code associated with the error.
      type: object
      required:
        - message
      title: TealErrorResponse
    TransactionUpdateWithId:
      properties:
        description:
          anyOf:
            - type: string
              maxLength: 512
            - type: 'null'
          title: Description
          description: |-
            An arbitrary string on the object, useful for
                    displaying information to the user. 
                    Descriptions over 512 characters will be truncated.
        metadata:
          anyOf:
            - additionalProperties:
                type: string
              type: object
            - type: 'null'
          title: Metadata
          description: |-
            Arbitrary structured information about the transaction.
                    This could be location of the transaction to display to the user or vendor 
                    information to use as part of a Platform or Instance categorization rule. 
                    Teal does not use metadata for any accounting purposes.
        review_status:
          anyOf:
            - $ref: '#/components/schemas/ReviewStatus'
            - type: 'null'
          description: |-
            Indicates if the transaction has been reviewed. 
                    See the [reviewing transactions](https://docs.teal.dev/guides/transactions/reviewing_transactions) 
                    for steps on how to use this.
          examples:
            - reviewed
        tag_ids:
          anyOf:
            - items:
                type: string
              type: array
            - type: 'null'
          title: Tag Ids
          description: |-
            An array of IDs of the Tag objects associated with 
                    the Transaction.

            Tags are transitive — the tags on a Transaction are 
                    applied to its corresponding Line Entry or Line Entries.
        id:
          type: string
          title: Id
          description: |-
            The unique ID of the object. This is used as an idempotency 
                    key to prevent duplicates. This is manually set as part of the create 
                    transactions request. If the transaction is created via a data integration, 
                    Plaid for example, it will be set to the `transaction_id` to enforce 
                    idempotency with the data source.
      type: object
      required:
        - id
      title: TransactionUpdateWithId
    TealErrorCode:
      type: string
      enum:
        - invalid_date
        - invalid_ledger
        - missing_parameters
        - duplicate_name
        - duplicate_sort_code
        - invalid_ledger_type
        - invalid_ledger_report_cash_flow
        - deleting_required_ledger
        - repeated_tag_group
        - deleting_transaction_line
        - modifying_read_only_ledger
        - debits_credits_not_equal
        - modifying_datetime_opening_balance
        - modifying_accrual_journal_entry
        - modifying_payment_application_journal_entry
        - reconciliation_in_progress
        - reconciled_balance_does_not_match
        - journal_entry_outside_reconciliation_period
        - entries_start_date_after_transactions
        - entries_start_date_after_reconciliations
        - entries_start_date_after_journal_entries
      title: TealErrorCode
    ReviewStatus:
      type: string
      enum:
        - unreviewed
        - reviewed
      title: ReviewStatus
  securitySchemes:
    OAuth2PasswordBearer:
      type: oauth2
      description: >-
        Bearer authentication header of the form Bearer <token>, where <token>
        is your auth token.
      flows:
        password:
          scopes: {}
          tokenUrl: https://developer.teal.dev

````