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

# Get transaction

> Gets the details of a single transaction.



## OpenAPI

````yaml get /v1/chains/{chainId}/transactions/{txHash}
openapi: 3.1.0
info:
  title: Data API
  description: >-
    The Data API provides web3 application developers with multi-chain data
    related to Avalanche's primary network, Avalanche subnets, and Ethereum.
    With Data API, you can easily build products that leverage real-time and
    historical transaction and transfer history, native and token balances, and
    various types of token metadata. The API is in Beta and may be subject to
    change.</br></br>If you have feedback or feature requests for the API,
    please submit them <a
    href="https://portal.productboard.com/dndv9ahlkdfye4opdm8ksafi/tabs/4-glacier-api">here</a>.
    Bug reports can be submitted <a
    href="https://docs.google.com/forms/d/e/1FAIpQLSeJQrcp7QoNiqozMDKrVJGX5wpU827d3cVTgF8qa7t_J1Pb-g/viewform">here</a>,
    and any potential security issues can be reported <a
    href="https://immunefi.com/bounty/avalabs">here</a>.
  version: 1.0.0
  contact: {}
servers:
  - url: https://glacier-api.avax.network
security:
  - apiKey: []
  - {}
tags:
  - name: EVM Chains
    description: >-
      Find information about indexed EVM-compatible chains, such as the
      Avalanche C-Chain.
  - name: EVM Blocks
    description: >-
      Find information about blocks on EVM-compatible chains, such as the
      Avalanche C-Chain.
  - name: EVM Transactions
    description: >-
      Find information about transactions on EVM-compatible chains, such as the
      Avalanche C-Chain.
  - name: EVM Balances
    description: >-
      Find information about balances on EVM-compatible chains, such as the
      Avalanche C-Chain.
  - name: EVM Contracts
    description: >-
      Find information about contracts on EVM-compatible chains, such as the
      Avalanche C-Chain.
  - name: Primary Network
  - name: Primary Network Blocks
    description: >-
      Find information about blocks on Avalanche's Primary Network Chains - the
      P-Chain, the X-Chain, and the C-Chain.
  - name: Primary Network Vertices
    description: Find information about vertices on Avalanche's X-Chain.
  - name: Primary Network Transactions
    description: >-
      Find information about transactions on Avalanche's Primary Network Chains
      - the P-Chain, the X-Chain, and the C-Chain.
  - name: Primary Network Balances
    description: >-
      Find information about balances on Avalanche's Primary Network Chains -
      the P-Chain, the X-Chain, and the C-Chain.
  - name: Primary Network UTXOs
    description: >-
      Find information about utxos on Avalanche's Primary Network Chains - the
      P-Chain, the X-Chain, and the C-Chain.
  - name: Primary Network Rewards
    description: Find information about rewards on Avalanche's Primary Network.
  - name: NFTs
  - name: Operations
  - name: Health Check
  - name: Teleporter
    description: Find information about Teleporter transactions.
  - name: Interchain Messaging
    description: Find information about Interchain Messaging transactions.
  - name: Webhooks
    description: Manage webhooks and get notified for various onchain activities.
  - name: RPC
    description: Interact with chain nodes using JSON-RPC.
  - name: Data API Usage Metrics
    description: Usage metrics and logs for the Data API.
  - name: Signature Aggregator
    description: Request signatures for a Warp message from Subnet validators
  - name: Notifications
    description: Get notifications for validator status and activity issues.
  - name: AVAX Supply
    description: Find information about AVAX supply.
paths:
  /v1/chains/{chainId}/transactions/{txHash}:
    get:
      tags:
        - EVM Transactions
      summary: Get transaction
      description: Gets the details of a single transaction.
      operationId: getTransaction
      parameters:
        - name: chainId
          required: true
          in: path
          description: >-
            A supported evm chain id or blockchain id. Use the `/chains`
            endpoint to get a list of supported chain ids.
          example: '43114'
          schema:
            type: string
        - name: txHash
          required: true
          in: path
          description: A transaction hash.
          example: '0x8bf584d7b14b92a32a339872a66b134a70ba3ba7c305823f348db6f860253f45'
          schema:
            type: string
      responses:
        '200':
          description: Successful response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetTransactionResponse'
        '400':
          description: |-
            Bad requests generally mean the client has passed invalid 
                or malformed parameters. Error messages in the response could help in 
                evaluating the error.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadRequest'
        '401':
          description: |-
            When a client attempts to access resources that require 
                authorization credentials but the client lacks proper authentication 
                in the request, the server responds with 401.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Unauthorized'
        '403':
          description: |-
            When a client attempts to access resources with valid
                credentials but doesn't have the privilege to perform that action, 
                the server responds with 403.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Forbidden'
        '404':
          description: |-
            The error is mostly returned when the client requests
                with either mistyped URL, or the passed resource is moved or deleted, 
                or the resource doesn't exist.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/NotFound'
        '429':
          description: |-
            This error is returned when the client has sent too many,
                and has hit the rate limit.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TooManyRequests'
        '500':
          description: |-
            The error is a generic server side error that is 
                returned for any uncaught and unexpected issues on the server side. 
                This should be very rare, and you may reach out to us if the problem 
                persists for a longer duration.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/InternalServerError'
        '502':
          description: |-
            This is an internal error indicating invalid response 
                  received by the client-facing proxy or gateway from the upstream server.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BadGateway'
        '503':
          description: |-
            The error is returned for certain routes on a particular
                Subnet. This indicates an internal problem with our Subnet node, and may 
                not necessarily mean the Subnet is down or affected.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ServiceUnavailable'
      x-codeSamples:
        - lang: javascript
          label: JavaScript
          source: |-
            import { Avalanche } from "@avalanche-sdk/chainkit";

            const avalanche = new Avalanche({
              chainId: "43114",
            });

            async function run() {
              const result = await avalanche.data.evm.transactions.get({
                txHash: "0x8bf584d7b14b92a32a339872a66b134a70ba3ba7c305823f348db6f860253f45",
              });

              console.log(result);
            }

            run();
components:
  schemas:
    GetTransactionResponse:
      type: object
      properties:
        erc20Transfers:
          description: The list of ERC-20 transfers.
          type: array
          items:
            $ref: '#/components/schemas/Erc20TransferDetails'
        erc721Transfers:
          description: The list of ERC-721 transfers.
          type: array
          items:
            $ref: '#/components/schemas/Erc721TransferDetails'
        erc1155Transfers:
          description: The list of ERC-1155 transfers.
          type: array
          items:
            $ref: '#/components/schemas/Erc1155TransferDetails'
        internalTransactions:
          description: >-
            The list of internal transactions. Note that this list only includes
            CALL and CALLCODE internal transactions that had a non-zero value
            and CREATE/CREATE2/CREATE3  calls. Use a client provider to recieve
            a full debug trace of the transaction.
          type: array
          items:
            $ref: '#/components/schemas/InternalTransactionDetails'
        networkTokenDetails:
          $ref: '#/components/schemas/NetworkTokenDetails'
        nativeTransaction:
          $ref: '#/components/schemas/FullNativeTransactionDetails'
        teleporterMessageInfo:
          description: Corresponding teleporter message info if available.
          allOf:
            - $ref: '#/components/schemas/TeleporterMessageInfo'
      required:
        - networkTokenDetails
        - nativeTransaction
    BadRequest:
      type: object
      properties:
        message:
          description: The error message describing the reason for the exception
          oneOf:
            - type: string
            - type: array
              items:
                type: string
        statusCode:
          type: number
          description: The HTTP status code of the response
          examples:
            - 400
        error:
          type: string
          description: The type of error
          examples:
            - Bad Request
      required:
        - message
        - statusCode
        - error
    Unauthorized:
      type: object
      properties:
        message:
          description: The error message describing the reason for the exception
          oneOf:
            - type: string
            - type: array
              items:
                type: string
        statusCode:
          type: number
          description: The HTTP status code of the response
          examples:
            - 401
        error:
          type: string
          description: The type of error
          examples:
            - Unauthorized
      required:
        - message
        - statusCode
        - error
    Forbidden:
      type: object
      properties:
        message:
          description: The error message describing the reason for the exception
          oneOf:
            - type: string
            - type: array
              items:
                type: string
        statusCode:
          type: number
          description: The HTTP status code of the response
          examples:
            - 403
        error:
          type: string
          description: The type of error
          examples:
            - Forbidden
      required:
        - message
        - statusCode
        - error
    NotFound:
      type: object
      properties:
        message:
          description: The error message describing the reason for the exception
          oneOf:
            - type: string
            - type: array
              items:
                type: string
        statusCode:
          type: number
          description: The HTTP status code of the response
          examples:
            - 404
        error:
          type: string
          description: The type of error
          examples:
            - Not Found
      required:
        - message
        - statusCode
        - error
    TooManyRequests:
      type: object
      properties:
        message:
          description: The error message describing the reason for the exception
          oneOf:
            - type: string
            - type: array
              items:
                type: string
        statusCode:
          type: number
          description: The HTTP status code of the response
          examples:
            - 429
        error:
          type: string
          description: The type of error
          examples:
            - Too Many Requests
      required:
        - message
        - statusCode
        - error
    InternalServerError:
      type: object
      properties:
        message:
          description: The error message describing the reason for the exception
          oneOf:
            - type: string
            - type: array
              items:
                type: string
        statusCode:
          type: number
          description: The HTTP status code of the response
          examples:
            - 500
        error:
          type: string
          description: The type of error
          examples:
            - Internal Server Error
      required:
        - message
        - statusCode
        - error
    BadGateway:
      type: object
      properties:
        message:
          description: The error message describing the reason for the exception
          oneOf:
            - type: string
            - type: array
              items:
                type: string
        statusCode:
          type: number
          description: The HTTP status code of the response
          examples:
            - 502
        error:
          type: string
          description: The type of error
          examples:
            - Bad Gateway
      required:
        - message
        - statusCode
        - error
    ServiceUnavailable:
      type: object
      properties:
        message:
          description: The error message describing the reason for the exception
          oneOf:
            - type: string
            - type: array
              items:
                type: string
        statusCode:
          type: number
          description: The HTTP status code of the response
          examples:
            - 503
        error:
          type: string
          description: The type of error
          examples:
            - Service Unavailable
      required:
        - message
        - statusCode
        - error
    Erc20TransferDetails:
      type: object
      properties:
        from:
          $ref: '#/components/schemas/RichAddress'
        to:
          $ref: '#/components/schemas/RichAddress'
        logIndex:
          type: number
        value:
          type: string
          examples:
            - '10000000000000000000'
        erc20Token:
          $ref: '#/components/schemas/Erc20Token'
      required:
        - from
        - to
        - logIndex
        - value
        - erc20Token
    Erc721TransferDetails:
      type: object
      properties:
        from:
          $ref: '#/components/schemas/RichAddress'
        to:
          $ref: '#/components/schemas/RichAddress'
        logIndex:
          type: number
        erc721Token:
          $ref: '#/components/schemas/Erc721Token'
      required:
        - from
        - to
        - logIndex
        - erc721Token
    Erc1155TransferDetails:
      type: object
      properties:
        from:
          $ref: '#/components/schemas/RichAddress'
        to:
          $ref: '#/components/schemas/RichAddress'
        logIndex:
          type: number
        value:
          type: string
          examples:
            - '10000000000000000000'
        erc1155Token:
          $ref: '#/components/schemas/Erc1155Token'
      required:
        - from
        - to
        - logIndex
        - value
        - erc1155Token
    InternalTransactionDetails:
      type: object
      properties:
        from:
          $ref: '#/components/schemas/RichAddress'
        to:
          $ref: '#/components/schemas/RichAddress'
        internalTxType:
          $ref: '#/components/schemas/InternalTransactionOpCall'
        value:
          type: string
          examples:
            - '10000000000000000000'
        isReverted:
          type: boolean
          description: True if the internal transaction was reverted.
        gasUsed:
          type: string
        gasLimit:
          type: string
      required:
        - from
        - to
        - internalTxType
        - value
        - isReverted
        - gasUsed
        - gasLimit
    NetworkTokenDetails:
      type: object
      properties:
        networkToken:
          $ref: '#/components/schemas/NetworkToken'
        currentPrice:
          description: The current token price, if available.
          allOf:
            - $ref: '#/components/schemas/Money'
        historicalPrice:
          description: >-
            The historical token price at the time the transaction occured, if
            available. Note, this is only provided if the transaction occured
            more than 24 hours ago.
          allOf:
            - $ref: '#/components/schemas/Money'
      required:
        - networkToken
    FullNativeTransactionDetails:
      type: object
      properties:
        blockNumber:
          type: string
          description: The block number on the chain.
          examples:
            - '339'
        blockTimestamp:
          type: number
          description: The block finality timestamp.
          examples:
            - 1648672486
        blockHash:
          type: string
          description: The block hash identifier.
          examples:
            - '0x17533aeb5193378b9ff441d61728e7a2ebaf10f61fd5310759451627dfca2e7c'
        chainId:
          type: string
          description: The EVM chain ID on which the transaction occured.
          examples:
            - '43114'
        blockIndex:
          type: number
          description: The index at which the transaction occured in the block (0-indexed).
          examples:
            - 0
        txHash:
          type: string
          description: The transaction hash identifier.
          examples:
            - '0x3e9303f81be00b4af28515dab7b914bf3dbff209ea10e7071fa24d4af0a112d4'
        txStatus:
          type: string
          description: >-
            The transaction status, which is either 0 (failed) or 1
            (successful).
          examples:
            - '1'
        txType:
          type: number
          description: The transaction type.
          examples:
            - 1
        gasLimit:
          type: string
          description: The gas limit set for the transaction.
          examples:
            - '51373'
        gasUsed:
          type: string
          description: The amount of gas used.
          examples:
            - '51373'
        gasPrice:
          type: string
          description: >-
            The gas price denominated by the number of decimals of the native
            token.
          examples:
            - '470000000000'
        nonce:
          type: string
          description: The nonce used by the sender of the transaction.
          examples:
            - '1'
        from:
          $ref: '#/components/schemas/RichAddress'
        to:
          $ref: '#/components/schemas/RichAddress'
        method:
          $ref: '#/components/schemas/Method'
        value:
          type: string
          examples:
            - '10000000000000000000'
        input:
          type: string
          description: The data sent for the transaction.
        baseFeePerGas:
          type: string
        maxFeePerGas:
          type: string
        maxPriorityFeePerGas:
          type: string
      required:
        - blockNumber
        - blockTimestamp
        - blockHash
        - chainId
        - blockIndex
        - txHash
        - txStatus
        - txType
        - gasLimit
        - gasUsed
        - gasPrice
        - nonce
        - from
        - to
        - value
        - input
        - baseFeePerGas
    TeleporterMessageInfo:
      type: object
      properties:
        teleporterMessageId:
          type: string
        direction:
          $ref: '#/components/schemas/TransactionDirectionType'
        sourceChainId:
          type: string
          description: >-
            chain id of the source chain. valid only for destination
            transactions
        destinationChainId:
          type: string
          description: >-
            chain id of the destination chain. valid only for source
            transactions
      required:
        - teleporterMessageId
        - direction
    RichAddress:
      type: object
      properties:
        name:
          type: string
          description: The contract name.
          examples:
            - Wrapped AVAX
        symbol:
          type: string
          description: The contract symbol.
          examples:
            - WAVAX
        decimals:
          type: number
          description: >-
            The number of decimals the token uses. For example `6`, means to
            divide the token amount by `1000000` to get its user representation.
          examples:
            - 18
        logoUri:
          type: string
          description: The logo uri for the address.
          examples:
            - >-
              https://images.ctfassets.net/gcj8jwzm6086/5VHupNKwnDYJvqMENeV7iJ/fdd6326b7a82c8388e4ee9d4be7062d4/avalanche-avax-logo.svg
        address:
          type: string
          description: A wallet or contract address in mixed-case checksum encoding.
          examples:
            - '0x71C7656EC7ab88b098defB751B7401B5f6d8976F'
      required:
        - address
    Erc20Token:
      type: object
      properties:
        address:
          type: string
          description: A wallet or contract address in mixed-case checksum encoding.
          examples:
            - '0x71C7656EC7ab88b098defB751B7401B5f6d8976F'
        name:
          type: string
          description: The contract name.
          examples:
            - Wrapped AVAX
        symbol:
          type: string
          description: The contract symbol.
          examples:
            - WAVAX
        decimals:
          type: number
          description: >-
            The number of decimals the token uses. For example `6`, means to
            divide the token amount by `1000000` to get its user representation.
          examples:
            - 18
        logoUri:
          type: string
          description: The logo uri for the address.
          examples:
            - >-
              https://images.ctfassets.net/gcj8jwzm6086/5VHupNKwnDYJvqMENeV7iJ/fdd6326b7a82c8388e4ee9d4be7062d4/avalanche-avax-logo.svg
        ercType:
          type: string
          enum:
            - ERC-20
        price:
          description: The token price, if available.
          allOf:
            - $ref: '#/components/schemas/Money'
      required:
        - address
        - name
        - symbol
        - decimals
        - ercType
    Erc721Token:
      type: object
      properties:
        address:
          type: string
          description: A wallet or contract address in mixed-case checksum encoding.
          examples:
            - '0x71C7656EC7ab88b098defB751B7401B5f6d8976F'
        name:
          type: string
          description: The contract name.
          examples:
            - Wrapped AVAX
        symbol:
          type: string
          description: The contract symbol.
          examples:
            - WAVAX
        ercType:
          type: string
          enum:
            - ERC-721
        tokenId:
          type: string
        tokenUri:
          type: string
        metadata:
          $ref: '#/components/schemas/Erc721TokenMetadata'
        ownerAddress:
          type: string
          description: A wallet or contract address in mixed-case checksum encoding.
          examples:
            - '0x71C7656EC7ab88b098defB751B7401B5f6d8976F'
      required:
        - address
        - name
        - symbol
        - ercType
        - tokenId
        - tokenUri
        - metadata
    Erc1155Token:
      type: object
      properties:
        address:
          type: string
          description: A wallet or contract address in mixed-case checksum encoding.
          examples:
            - '0x71C7656EC7ab88b098defB751B7401B5f6d8976F'
        ercType:
          type: string
          enum:
            - ERC-1155
        tokenId:
          type: string
        tokenUri:
          type: string
        metadata:
          $ref: '#/components/schemas/Erc1155TokenMetadata'
      required:
        - address
        - ercType
        - tokenId
        - tokenUri
        - metadata
    InternalTransactionOpCall:
      type: string
      enum:
        - UNKNOWN
        - CALL
        - CREATE
        - CREATE2
        - CREATE3
        - CALLCODE
        - DELEGATECALL
        - STATICCALL
    NetworkToken:
      type: object
      properties:
        name:
          type: string
          description: The contract name.
          examples:
            - Wrapped AVAX
        symbol:
          type: string
          description: The contract symbol.
          examples:
            - WAVAX
        decimals:
          type: number
          description: >-
            The number of decimals the token uses. For example `6`, means to
            divide the token amount by `1000000` to get its user representation.
          examples:
            - 18
        logoUri:
          type: string
          description: The logo uri for the address.
          examples:
            - >-
              https://images.ctfassets.net/gcj8jwzm6086/5VHupNKwnDYJvqMENeV7iJ/fdd6326b7a82c8388e4ee9d4be7062d4/avalanche-avax-logo.svg
        description:
          type: string
      required:
        - name
        - symbol
        - decimals
    Money:
      type: object
      properties:
        currencyCode:
          $ref: '#/components/schemas/CurrencyCode'
          examples:
            - usd
        value:
          type: number
          description: Monetary value in base 10 decimals.
          examples:
            - '42.42'
      required:
        - currencyCode
        - value
    Method:
      type: object
      properties:
        callType:
          $ref: '#/components/schemas/TransactionMethodType'
          examples:
            - CONTRACT_CALL
        methodHash:
          type: string
          description: >-
            The contract method hash identifier. The method hash is only set if
            the `callType` is `CONTRACT_CALL`.
          examples:
            - '0xa9059cbb'
        methodName:
          type: string
          description: >-
            The contract method name including parameter types. If the
            `callType` is `NATIVE_TRANSFER` this is set to 'Native Transfer'. If
            the `callType` is `CONTRACT_CREATION` this is set to 'Contract
            Created'.
          examples:
            - transfer(address,uint256)
      required:
        - callType
        - methodHash
    TransactionDirectionType:
      type: string
      enum:
        - SOURCE_TRANSACTION
        - DESTINATION_TRANSACTION
    Erc721TokenMetadata:
      type: object
      properties:
        indexStatus:
          $ref: '#/components/schemas/NftTokenMetadataStatus'
          examples:
            - indexed
        metadataLastUpdatedTimestamp:
          type: number
        name:
          type: string
        symbol:
          type: string
        imageUri:
          type: string
        description:
          type: string
        animationUri:
          type: string
        externalUrl:
          type: string
        background:
          type: string
        attributes:
          type: string
      required:
        - indexStatus
    Erc1155TokenMetadata:
      type: object
      properties:
        indexStatus:
          $ref: '#/components/schemas/NftTokenMetadataStatus'
          examples:
            - indexed
        metadataLastUpdatedTimestamp:
          type: number
        name:
          type: string
        symbol:
          type: string
        imageUri:
          type: string
        description:
          type: string
        animationUri:
          type: string
        externalUrl:
          type: string
        background:
          type: string
        decimals:
          type: number
        properties:
          type: string
      required:
        - indexStatus
    CurrencyCode:
      type: string
      description: ISO 4217 currency code.
      enum:
        - usd
        - eur
        - aud
        - cad
        - chf
        - clp
        - cny
        - czk
        - dkk
        - gbp
        - hkd
        - huf
        - jpy
        - nzd
    TransactionMethodType:
      type: string
      description: >-
        The contract call type. NATIVE_TRANSFER indicates a transfer of the
        native token without any smart-contract interaction. CONTRACT_CALL
        indicates a smart-contract interaction. CONTRACT_CREATION indicates a
        smart-contract creation.
      enum:
        - NATIVE_TRANSFER
        - CONTRACT_CALL
        - CONTRACT_CREATION
    NftTokenMetadataStatus:
      type: string
      description: The metadata indexing status of the nft.
      enum:
        - UNKNOWN
        - MISSING_TOKEN
        - INVALID_TOKEN_URI
        - INVALID_TOKEN_URI_SCHEME
        - UNREACHABLE_TOKEN_URI
        - THROTTLED_TOKEN_URI
        - METADATA_CONTENT_TOO_LARGE
        - INVALID_METADATA
        - INVALID_METADATA_JSON
        - INDEXED
        - UNINDEXED
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: x-glacier-api-key
      description: >-
        Api keys provide higher access to rate limits. To obtain an api key,
        sign up for an account at https://avacloud.io/.

````