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

# Address transactions

> Retrieve paginated list of transactions for a specific address using cursor-based pagination. The transactions are sorted by block time in descending order.

You can also filter the transactions by accepted only, and retrieve the payload of the transaction if needed.

## Cost

This endpoint costs **0.5 RU** (Request Units) per call.


## OpenAPI

````yaml GET /v1/addresses/{address}/transactions
openapi: 3.0.0
info:
  title: Kaspa Developer Platform (KDP) API
  description: >-
    A high-performance REST API providing real-time and historical data from the
    Kaspa blockchain
  version: '1.0'
  contact: {}
servers:
  - url: https://api.kas.fyi
    description: Mainnet API
security: []
tags:
  - name: Address
    description: Operations related to Kaspa addresses
  - name: Block
    description: Operations related to Kaspa blocks
  - name: Transaction
    description: Operations related to Kaspa transactions
  - name: Token
    description: Operations related to KRC20 tokens
  - name: Kaspa Node RPC Proxy
    description: Direct proxy to Kaspa node RPC methods
paths:
  /v1/addresses/{address}/transactions:
    get:
      tags:
        - Address
      summary: Address transactions
      description: >-
        Retrieve paginated list of transactions for a specific address using
        cursor-based pagination. The transactions are sorted by block time in
        descending order.


        You can also filter the transactions by accepted only, and retrieve the
        payload of the transaction if needed.
      operationId: AddressController_getAddressTransactions
      parameters:
        - name: address
          required: true
          in: path
          description: Kaspa address
          schema:
            example: >-
              kaspa:qpzpfwcsqsxhxwup26r55fd0ghqlhyugz8cp6y3wxuddc02vcxtjg75pspnwz
            type: string
        - name: starting_after
          required: false
          in: query
          description: >-
            A cursor for pagination through results. Set `starting_after` to the
            transaction ID where you want to begin the next page.




            For example, if your request returns 100 transactions ending with
            transaction ID `obj_foo`, use `starting_after=obj_foo` in your next
            request to fetch the following page.


            If provided, the transactions will be sorted by transaction time in
            descending order. Otherwise, the first page of results will be
            returned.
          schema:
            example: a7177c55769381a56c126e458c8bb6046613b8a8d45c2f8d3ca5dc71a065279a
            type: string
        - name: ending_before
          required: false
          in: query
          description: >-
            A cursor for pagination through results. Set `ending_before` to the
            transaction ID where you want to end the previous page.




            For example, if your request returns 100 objects starting with
            transaction ID `obj_bar`, use `ending_before=obj_bar` in your next
            request to fetch the preceding page.


            If provided, the transactions will be sorted by transaction time in
            ascending order.


            `ending_before` cannot be used in combination with `starting_after`.
          schema:
            example: a7177c55769381a56c126e458c8bb6046613b8a8d45c2f8d3ca5dc71a065279a
            type: string
        - name: limit
          required: false
          in: query
          description: >-
            Number of items to return, the max number of items is 100. Default
            is 20.
          schema:
            example: 20
            type: number
        - name: include_payload
          required: false
          in: query
          description: >-
            Whether to include the payload of the transaction.  Default is
            `false`.
          schema:
            example: false
            type: boolean
        - name: accepted_only
          required: false
          in: query
          description: Whether to include accepted transactions only. Default is `false`.
          schema:
            example: false
            type: boolean
      responses:
        '200':
          description: List of address transactions with pagination cursors
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetAddressTransactionsResponseDto'
      security:
        - x-api-key: []
components:
  schemas:
    GetAddressTransactionsResponseDto:
      type: object
      properties:
        transactions:
          description: An array of transactions associated with this address.
          type: array
          items:
            $ref: '#/components/schemas/AddressTransactionResponseDto'
        metadata:
          description: Metadata about the pagination of the results
          allOf:
            - $ref: '#/components/schemas/PaginationMetadata'
      required:
        - transactions
        - metadata
    AddressTransactionResponseDto:
      type: object
      properties:
        transactionId:
          type: string
          description: Transaction ID
          example: a7177c55769381a56c126e458c8bb6046613b8a8d45c2f8d3ca5dc71a065279a
        blockTime:
          format: int64
          type: integer
          description: Block time
          example: 1749531022210
        subnetworkId:
          type: string
          description: The subnetwork ID of the transaction
          example: '0000000000000000000000000000000000000000'
        hash:
          type: string
          description: Transaction hash
          example: f123bed13d88bc18236d977c0035267d0054b912170fe4ae619e93306685d2af
        mass:
          type: string
          description: The mass of the transaction
          example: '2036'
        blockHashes:
          description: The hashes of the blocks that contain the transaction
          example:
            - 30ab8f5ac54c8aa9cbf9a69209a2061e7123293efc40630136c970abef59450b
            - f97afb6794c56e0bb283ea6a38cc51cc41303a055ef9376e707139928cffa588
          type: array
          items:
            type: string
        acceptingBlockHash:
          type: string
          description: >-
            The hash of the block that accepted the transaction. Returns null if
            the transaction is not accepted.
          example: 2a0c51fab2a7c7a187299e087a244d1e70acdc75e0214a661c62761e2d6bbf4f
        isAccepted:
          type: boolean
          description: Whether the transaction is accepted
          example: true
        confirmations:
          type: number
          description: >-
            The number of confirmations for the transaction, calculated as the
            sink blue score minus the accepting block's blue score. Returns null
            if the transaction is not accepted.
          example: 10
        payload:
          type: string
          description: The payload of the transaction
          example: 0x
        inputs:
          type: array
          items:
            $ref: '#/components/schemas/TransactionInputResponseDto'
        outputs:
          type: array
          items:
            $ref: '#/components/schemas/TransactionOutputResponseDto'
        amountSent:
          format: int64
          type: integer
          description: >-
            The total amount in sompi sent from this address in the transaction.
            This represents the sum of all input amounts signed by this address.
            Returns null if the sent amount cannot be determined.
          example: '31112708372'
          nullable: true
        amountReceived:
          format: int64
          type: integer
          description: >-
            The total amount in sompi received by this address in the
            transaction. This represents the sum of all output amounts sent to
            this address.
          example: '31112708372'
        balanceChange:
          format: int64
          type: integer
          description: >-
            The net balance change in sompi for this address in the transaction
            (amountReceived - amountSent). Returns null if the balance change
            cannot be determined.
          example: '31112708372'
          nullable: true
        fee:
          format: int64
          type: integer
          description: >-
            The transaction fee in sompi, calculated as the sum of all input
            amounts minus the sum of all output amounts. Returns null if the fee
            cannot be determined.
          example: '311100000'
          nullable: true
      required:
        - transactionId
        - blockTime
        - subnetworkId
        - hash
        - mass
        - blockHashes
        - acceptingBlockHash
        - isAccepted
        - confirmations
        - payload
        - inputs
        - outputs
        - amountSent
        - amountReceived
        - balanceChange
        - fee
    PaginationMetadata:
      type: object
      properties:
        hasMore:
          type: boolean
          description: >-
            Indicates whether there are more elements available after this set
            of results.
          example: true
        count:
          type: number
          description: The number of elements in the current page
          example: 10
      required:
        - hasMore
        - count
    TransactionInputResponseDto:
      type: object
      properties:
        transactionId:
          type: string
          description: Transaction ID
          example: a7177c55769381a56c126e458c8bb6046613b8a8d45c2f8d3ca5dc71a065279a
        index:
          type: number
          description: Index of the transaction
          example: 0
        signatureScript:
          type: string
          description: The signature script of the input
          example: >-
            4183faed776b7f1b1ed32b97aafe3069ee357c80b637f5069ab859916a896ec69a59e9bebcc3e646587d59376a40c72dd0290f8ebdbf0b64f13e2d8f81d0fe106301
        sigOpCount:
          type: number
          description: The number of signature operations in the input
          example: 1
        previousOutput:
          description: The previous output of the input
          allOf:
            - $ref: '#/components/schemas/TransactionOutputResponseDto'
      required:
        - transactionId
        - index
        - signatureScript
        - sigOpCount
        - previousOutput
    TransactionOutputResponseDto:
      type: object
      properties:
        transactionId:
          type: string
          description: Transaction ID
          example: a7177c55769381a56c126e458c8bb6046613b8a8d45c2f8d3ca5dc71a065279a
        index:
          type: number
          description: Index of the transaction
          example: 0
        amount:
          type: string
          description: The amount of this output in sompi.
          example: '31112708372'
        scriptPublicKey:
          type: string
          description: The script public key of the output
          example: 2010fdab002cff0ac15bfc8b982c5a616bef9e5a66f0c655f4f63f7d1cef39d2b4ac
        scriptPublicKeyAddress:
          type: string
          description: The script public key address of the output
          example: kaspa:qqg0m2cq9nls4s2mlj9estz6v947l8j6vmcvv4057clh688088ftg7ce6p895
        scriptPublicKeyType:
          type: string
          description: The script public key type of the output
          example: pubkey
      required:
        - transactionId
        - index
        - amount
        - scriptPublicKey
        - scriptPublicKeyAddress
        - scriptPublicKeyType
  securitySchemes:
    x-api-key:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        API key required for authentication. Get your API key at
        https://developer.kas.fyi

````