Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/slvler/etherscan-service
An api service for etherscan.io
https://github.com/slvler/etherscan-service
api api-wrapper etherscan etherscan-api etherscan-io laravel laravel-package laravel-service wrapper
Last synced: 11 days ago
JSON representation
An api service for etherscan.io
- Host: GitHub
- URL: https://github.com/slvler/etherscan-service
- Owner: slvler
- License: mit
- Created: 2022-10-01T20:49:20.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-10-20T21:39:22.000Z (18 days ago)
- Last Synced: 2024-10-21T02:08:29.480Z (18 days ago)
- Topics: api, api-wrapper, etherscan, etherscan-api, etherscan-io, laravel, laravel-package, laravel-service, wrapper
- Language: PHP
- Homepage:
- Size: 29.3 KB
- Stars: 17
- Watchers: 2
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# Etherscan Service
[![tests](https://github.com/slvler/etherscan-service/actions/workflows/tests.yml/badge.svg)](https://github.com/slvler/etherscan-service/actions/workflows/tests.yml)
[![Latest Stable Version](https://poser.pugx.org/slvler/ether/v)](https://packagist.org/packages/slvler/ether)
[![Latest Unstable Version](https://poser.pugx.org/slvler/ether/v/unstable)](https://packagist.org/packages/slvler/ether)
[![License](https://img.shields.io/github/license/slvler/etherscan-service)](https://packagist.org/packages/slvler/ether)
[![Total Downloads](https://poser.pugx.org/slvler/ether/downloads)](https://packagist.org/packages/slvler/ether)An api service for etherscan.io
## Installation
To install this package tou can use composer:
```bash
composer require slvler/ether
```## Usage
- First, you should extract the config/etherscan.php file to the config folder.
```php
php artisan vendor:publish --tag=ether
```- First of all we'll add the API key and API Url of the service we're using to our .env file of our project. If you don't have an account yet on api.etherscan.io, you should create one. Once you have an account you can copy your API key from the dashboard page and put it into you .env file.
```php
ETHERSCAN_BASE_URL=https://api.etherscan.io/
ETHERSCAN_API_KEY=YOUR-API-KEY
```- This is how you can connect to the etherscan api service.
- Returns the Ether balance of a given address.```php
$ether = new EtherScanService();
$ether->balance('0xde0b295669a9fd93d5f28d9ec85e40f4cb697bae');
```- Returns the balance of the accounts from a list of addresses.
```php
$data = [
'0xddbd2b932c763ba5b1b7ae3b362eac3e8d40121a',
'0x63a9975ba31b0b9626b34300f7f627147df1f526',
'0x198ef1ec325a96cc354c7266a038be8b5c558f67'
];
$ether = new EtherScanService();
$ether->balance_multiple($data);
```
-
- Returns the list of transactions performed by an address, with optional pagination.```php
$ether = new EtherScanService();
$ether->transactions_normal('0xde0b295669a9fd93d5f28d9ec85e40f4cb697bae');
```- Returns the list of internal transactions performed by an address, with optional pagination.
```php
$ether = new EtherScanService();
$ether->transactions_internal('0xde0b295669a9fd93d5f28d9ec85e40f4cb697bae');
```- Returns the list of internal transactions performed within a transaction.
```php
$ether = new EtherScanService();
$ether->transactions_internal_hash('0x40eb908387324f2b575b4879cd9d7188f69c8fc9d87c901b9e2daaea4b442170');
```- Returns the list of internal transactions performed within a block range, with optional pagination.
```php
$ether = new EtherScanService();
$ether->transactions_internal_block_range();
```- Returns the list of ERC-20 tokens transferred by an address, with optional filtering by token contract.
```php
$ether = new EtherScanService();
$ether->token_transfer_events_erc20();
```- Returns the list of ERC-721 ( NFT ) tokens transferred by an address, with optional filtering by token contract.
```php
$ether = new EtherScanService();
$ether->token_transfer_events_erc721();
```- Returns the list of ERC-1155 ( Multi Token Standard ) tokens transferred by an address, with optional filtering by token contract.
```php
$ether = new EtherScanService();
$ether->token_transfer_events_erc1155();
```- Returns the list of blocks mined by an address.
```php
$ether = new EtherScanService();
$ether->address_blocks_mined();
```- Returns the balance of an address at a certain block height. - PRO
```php
$ether = new EtherScanService();
$ether->balance_single_adress();
```### Testing
```bash
composer test
```## Credits
- [slvler](https://github.com/slvler)
## License
The MIT License (MIT). Please see [License File](https://github.com/slvler/etherscan-service/blob/main/README.md) for more information.