API ReferenceBlockchain APIGet LogsGet logs by contractVersion: 2.2Get logs by contractGEThttps://deep-index.moralis.io/api/v2.2/:address/logsGet the logs for a contract.PATH PARAMSaddressstringrequiredThe address of the contractQUERY PARAMSchainstringThe chain to queryeth0x1sepolia0xaa36a7holesky0x4268polygon0x89polygon amoy0x13882bsc0x38bsc testnet0x61avalanche0xa86afantom0xfapalm0x2a15c308dcronos0x19arbitrum0xa4b1gnosis0x64gnosis testnet0x27d8chiliz0x15b38chiliz testnet0x15b32base0x2105base sepolia0x14a34optimism0xaoptimism sepolia0xaa37dclinea0xe708linea sepolia0xe705moonbeam0x504moonriver0x505moonbase0x507block_numberstringThe block numberProvide the param 'block_number' or ('from_block' and / or 'to_block')If 'block_number' is provided in combination with 'from_block' and / or 'to_block', 'block_number' will be usedfrom_blockstringThe minimum block number from which to get the logsProvide the param 'block_number' or ('from_block' and / or 'to_block')If 'block_number' is provided in combination with 'from_block' and / or 'to_block', 'block_number' will be usedto_blockstringThe maximum block number from which to get the logsProvide the param 'block_number' or ('from_block' and / or 'to_block')If 'block_number' is provided in combination with 'from_block' and / or 'to_block', 'block_number' will be usedfrom_datestringThe start date from which to get the logs (any format that is accepted by momentjs)Provide the param 'from_block' or 'from_date'If 'from_date' and 'from_block' are provided, 'from_block' will be used.If 'from_date' and the block params are provided, the block params will be used. Please refer to the blocks params sections (block_number,from_block and to_block) on how to use themto_datestringGet the logs up to this date (any format that is accepted by momentjs)Provide the param 'to_block' or 'to_date'If 'to_date' and 'to_block' are provided, 'to_block' will be used.If 'to_date' and the block params are provided, the block params will be used. Please refer to the blocks params sections (block_number,from_block and to_block) on how to use themtopic0stringrequiredtopic0limitnumberThe desired page size of the result.orderstringThe order of the result, in ascending (ASC) or descending (DESC)ASCDESCcursorstringThe cursor returned in the previous response (used for getting the next page).Responses200 Returns the logs for an addressobjectAPI KEYTest Live APINode.jsPythoncURLGoPHPimport Moralis from 'moralis';try { await Moralis.start({ apiKey: "YOUR_API_KEY" }); const response = await Moralis.EvmApi.events.getContractLogs({ "chain": "0x1", "order": "DESC", "address": "0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB" }); console.log(response.raw);} catch (e) { console.error(e);}from moralis import evm_apiapi_key = "YOUR_API_KEY"params = { "chain": "eth", "order": "DESC", "address": "0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB"}result = evm_api.events.get_contract_logs( api_key=api_key, params=params,)print(result)curl --request GET \ --url 'https://deep-index.moralis.io/api/v2.2/0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB/logs?chain=eth&order=DESC' \ --header 'accept: application/json' \ --header 'X-API-Key: YOUR_API_KEY' package mainimport ( "fmt" "net/http" "io/ioutil")func main() { url := "https://deep-index.moralis.io/api/v2.2/0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB/logs?chain=eth&order=DESC" req, _ := http.NewRequest("GET", url, payload) req.Header.Add("Accept", "application/json") req.Header.Add("X-API-Key", "YOUR_API_KEY") res, _ := http.DefaultClient.Do(req) defer res.Body.Close() body, _ := ioutil.ReadAll(res.Body) fmt.Println(res) fmt.Println(string(body))}<?php// Dependencies to install:// $ composer require guzzlehttp/guzzlerequire_once('vendor/autoload.php');$client = new \GuzzleHttp\Client();$response = $client->request('GET', 'https://deep-index.moralis.io/api/v2.2/0xb47e3cd837dDF8e4c57F05d70Ab865de6e193BBB/logs?chain=eth&order=DESC', [ 'headers' => [ 'Accept' => 'application/json', 'X-API-Key' => 'YOUR_API_KEY', ],]);echo $response->getBody();Response Example200 Returns the logs for an address{ "page": "1", "page_size": "100", "cursor": "", "result": { "transaction_hash": "0x2d30ca6f024dbc1307ac8a1a44ca27de6f797ec22ef20627a1307243b0ab7d09", "address": "0x057Ec652A4F150f7FF94f089A38008f49a0DF88e", "block_timestamp": "2021-04-02T10:07:54.000Z", "block_number": 12526958, "block_hash": "0x0372c302e3c52e8f2e15d155e2c545e6d802e479236564af052759253b20fd86", "data": "0x00000000000000000000000000000000000000000000000de05239bccd4d537400000000000000000000000000024dbc80a9f80e3d5fc0a0ee30e2693781a443", "topic0": "0x2caecd17d02f56fa897705dcc740da2d237c373f70686f4e0d9bd3bf0400ea7a", "topic1": "0x000000000000000000000000031002d15b0d0cd7c9129d6f644446368deae391", "topic2": "0x000000000000000000000000d25943be09f968ba740e0782a34e710100defae9", "topic3": "", "transaction_index": 12, "log_index": 15 }}