{"id":47128569,"url":"https://github.com/corpetty/py-etherscan-api","last_synced_at":"2026-03-12T19:59:15.331Z","repository":{"id":9051520,"uuid":"60660229","full_name":"corpetty/py-etherscan-api","owner":"corpetty","description":"Python bindings to the Etherscan.io API","archived":false,"fork":false,"pushed_at":"2024-05-18T19:39:55.000Z","size":225,"stargazers_count":516,"open_issues_count":33,"forks_count":250,"subscribers_count":35,"default_branch":"master","last_synced_at":"2025-09-20T22:46:24.062Z","etag":null,"topics":["ethereum","etherscan","python-bindings"],"latest_commit_sha":null,"homepage":null,"language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/corpetty.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null},"funding":{"github":null,"patreon":null,"open_collective":null,"ko_fi":null,"tidelift":null,"community_bridge":null,"liberapay":null,"issuehunt":null,"otechie":null,"custom":null}},"created_at":"2016-06-08T01:55:21.000Z","updated_at":"2025-09-16T05:54:40.000Z","dependencies_parsed_at":"2024-06-18T16:53:26.984Z","dependency_job_id":"36f72ebc-03e7-48b7-bacb-39327ac2f543","html_url":"https://github.com/corpetty/py-etherscan-api","commit_stats":{"total_commits":53,"total_committers":13,"mean_commits":4.076923076923077,"dds":0.7358490566037736,"last_synced_commit":"9a3accfa455eb1d9d82ac7be41012948a58f90e3"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/corpetty/py-etherscan-api","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/corpetty%2Fpy-etherscan-api","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/corpetty%2Fpy-etherscan-api/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/corpetty%2Fpy-etherscan-api/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/corpetty%2Fpy-etherscan-api/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/corpetty","download_url":"https://codeload.github.com/corpetty/py-etherscan-api/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/corpetty%2Fpy-etherscan-api/sbom","scorecard":{"id":305224,"data":{"date":"2025-08-11","repo":{"name":"github.com/corpetty/py-etherscan-api","commit":"9a3accfa455eb1d9d82ac7be41012948a58f90e3"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.3,"checks":[{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Code-Review","score":5,"reason":"Found 8/15 approved changesets -- score normalized to 5","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Maintained","score":0,"reason":"0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0","details":null,"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"License","score":10,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Info: FSF or OSI recognized license: MIT License: LICENSE:0"],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"Vulnerabilities","score":7,"reason":"3 existing vulnerabilities detected","details":["Warn: Project is vulnerable to: GHSA-9hjg-9r4m-mvj7","Warn: Project is vulnerable to: GHSA-9wx4-h78v-vm56","Warn: Project is vulnerable to: PYSEC-2023-74 / GHSA-j8r2-6x86-q33q"],"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 24 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-17T21:51:49.827Z","repository_id":9051520,"created_at":"2025-08-17T21:51:49.827Z","updated_at":"2025-08-17T21:51:49.827Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":30441854,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-12T14:34:45.044Z","status":"ssl_error","status_checked_at":"2026-03-12T14:09:33.793Z","response_time":114,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ethereum","etherscan","python-bindings"],"created_at":"2026-03-12T19:59:14.655Z","updated_at":"2026-03-12T19:59:15.317Z","avatar_url":"https://github.com/corpetty.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# py-etherscan-api module\n\n[![Build Status](https://secure.travis-ci.org/corpetty/py-etherscan-api.png?branch=master)](http://travis-ci.org/corpetty/py-etherscan-api) [![Join the chat at https://gitter.im/py-etherscan/Lobby](https://badges.gitter.im/py-etherscan/Lobby.svg)](https://gitter.im/py-etherscan/Lobby?utm_source=badge\u0026utm_medium=badge\u0026utm_campaign=pr-badge\u0026utm_content=badge)\n\nEtherScan.io API python bindings\n\n## Description\n\nThis module is written as an effort to provide python bindings to the EtherScan.io API, which can be found at:\nhttps://etherscan.io/apis. If you are interacting with a contract on the Ropsten Testnet please use\nhttps://ropsten.etherscan.io/apis.\nIn order to use this, you must attain an Etherscan user account, and generate an API key.\n\nIn order to use the API, you must provide an API key at runtime, which can be found at the Etherscan.io API website.\nIf you'd like to use the provided examples without altering them, then the JSON file `api_key.json` must be stored in\nthe base directory. Its format is as follows:\n\n    { \"key\" : \"YourApiKeyToken\" }\n\nwith `YourApiKeyToken` is your provided API key token from EtherScan.io\n\n## Installation\n\nTo install the package to your computer, simply run the following command in the base directory:\n\n    python3 -m pip install py-etherscan-api\n\n## Available bindings\n\nCurrently, only the following Etherscan.io API modules are available:\n\n- accounts\n- contracts\n- stats\n- tokens\n- proxies\n- blocks\n- transactions\n- Logs\n- Gas Tracker\n\nThe remaining available modules provided by Etherscan.io will be added eventually...\n\n## Available Networks\n\nCurrently, this works for the following networks:\n\n- Mainnet\n- Ropsten\n\n## Examples\n\nAll possible calls have an associated example file in the examples folder to show how to call the binding\n\nThese of course will be fleshed out with more details and explanation in time\n\nJupyter notebooks area also included in each directory to show all examples\n\n## TODO:\n\n- Package and submit to PyPI\n- Add the following modules:\n  - geth proxy\n  - websockets\n- Add robust documentation\n- Add unit test suite\n- Add request throttling based on Etherscan's suggestions\n\n## Holla at ya' boy\n\nBTC: 16Ny72US78VEjL5GUinSAavDwARb8dXWKG\n\nETH: 0x5E8047fc033499BD5d8C463ADb29f10f11165ed0\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcorpetty%2Fpy-etherscan-api","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcorpetty%2Fpy-etherscan-api","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcorpetty%2Fpy-etherscan-api/lists"}