openapi: 3.0.1 info: title: Chainlens Account-Controller Transaction-Controller API description: Chainlens provides a robust and intuitive platform combining user-friendly exploration with powerful analytics and advanced features. Whether monitoring real-time blockchain transactions, verifying smart contracts, or tracking NFTs, Chainlens ensures you have all the necessary tools at your fingertips. version: master tags: - name: Transaction-Controller paths: /transactions: get: tags: - Transaction-Controller summary: Chainlens Retrieve transactions by address or block. operationId: findTransactions parameters: - name: query in: query required: true schema: $ref: '#/components/schemas/FindTransactionsQuery' responses: '200': description: OK content: '*/*': schema: $ref: '#/components/schemas/LatestTransactionModel' /transactions/{transactionHash}: get: tags: - Transaction-Controller summary: Chainlens Retrieve a transaction by its hash. operationId: getTransaction parameters: - name: transactionHash in: path description: The hash identifying the transaction. required: true schema: type: string responses: '200': description: OK content: '*/*': schema: $ref: '#/components/schemas/TransactionModel' components: schemas: FindTransactionsQuery: required: - direction - page - size - sort type: object properties: page: minimum: 0 type: integer format: int32 size: maximum: 100 minimum: 1 type: integer format: int32 direction: type: string enum: - ASC - DESC sort: type: string enum: - blockNumber - timestampISO - transactionType - functionName - direction - ethValue filter: type: string FunctionMeta: required: - functionName - params - stateMutability - type type: object properties: functionName: type: string stateMutability: type: string type: type: string params: type: array items: $ref: '#/components/schemas/FunctionParameterModel' Link: required: - display - href - rel type: object properties: href: type: string rel: type: string display: type: string Log: type: object properties: removed: type: boolean logIndex: type: integer transactionIndex: type: integer transactionHash: type: string blockHash: type: string blockNumber: type: integer address: type: string data: type: string type: type: string topics: type: array items: type: string logIndexRaw: type: string transactionIndexRaw: type: string blockNumberRaw: type: string FunctionParameterModel: required: - name - type - value type: object properties: value: type: object name: type: string type: type: string links: type: array items: $ref: '#/components/schemas/Link' LatestTransactionModel: required: - data - paging type: object properties: paging: $ref: '#/components/schemas/PagingModel' data: type: array items: $ref: '#/components/schemas/TransactionRowModel' TransactionModel: required: - blockHash - blockNumber - cumulativeGasUsed - ethValue - from - fromLinks - gas - gasPrice - gasUsed - hash - input - isPrivate - logs - logsBloom - r - s - timestampISO - to - toLinks - transactionIndex - transactionType - v - value - verifiedTimestampISO type: object properties: hash: type: string blockHash: type: string blockNumber: type: integer format: int64 transactionIndex: type: integer format: int64 from: type: string fromLinks: type: array items: $ref: '#/components/schemas/Link' to: type: string toLinks: type: array items: $ref: '#/components/schemas/Link' value: type: integer ethValue: type: number gasPrice: type: integer gas: type: integer gasUsed: type: integer cumulativeGasUsed: type: integer input: type: string r: type: string s: type: string v: type: integer format: int64 logs: type: array items: $ref: '#/components/schemas/Log' logsBloom: type: string status: type: string revertReason: type: string timestampISO: type: string verifiedTimestampISO: type: string isPrivate: type: boolean transactionType: type: string enum: - Transfer - ContractCreation - ContractCall functionMeta: $ref: '#/components/schemas/FunctionMeta' fromAddressInfo: $ref: '#/components/schemas/AddressInfo' toAddressInfo: $ref: '#/components/schemas/AddressInfo' AddressInfo: required: - address - isContract - isProxy - isVerified type: object properties: address: type: string name: type: string isContract: type: boolean isVerified: type: boolean isProxy: type: boolean verifiedStatus: type: string enum: - Partial - Full contractType: type: string enum: - contract - nft - token PagingModel: required: - direction - page - size - sort - totalElements type: object properties: page: type: integer format: int32 size: type: integer format: int32 sort: type: string direction: type: string enum: - ASC - DESC totalElements: type: integer format: int64 TransactionRowModel: required: - direction - ethValue - from - fromAddressInfo - fromLinks - hash - isPrivate - timestampISO - to - toAddressInfo - toLinks - transactionType - value type: object properties: hash: type: string from: type: string fromAddressInfo: $ref: '#/components/schemas/AddressInfo' fromLinks: type: array items: $ref: '#/components/schemas/Link' to: type: string toAddressInfo: $ref: '#/components/schemas/AddressInfo' toLinks: type: array items: $ref: '#/components/schemas/Link' value: type: integer ethValue: type: number isPrivate: type: boolean timestampISO: type: string transactionType: type: string enum: - Transfer - ContractCreation - ContractCall status: type: string revertReason: type: string functionMeta: $ref: '#/components/schemas/FunctionMeta' direction: type: string enum: - In - Out - Self - Unknown isInternalToAccount: type: boolean externalDocs: description: Chainlens Documentation url: https://docs.chainlens.com/