Skip to content

This node module help to check if a account is sanction. Currently only chainalysis sanction api is support. Here you can find more Information: https://public.chainalysis.com/docs/index.html#create-an-api-key

License

Notifications You must be signed in to change notification settings

a6b8/ethereum-sanction-check-for-nodejs

Repository files navigation

Ethereum Sanction Check for Node.js

This node module help to check if a account is sanction. Currently only chainalysis sanction api is support. Here you can find more Information: https://public.chainalysis.com/docs/index.html#create-an-api-key


Examples

ENS Names compatible

const SanctionCheck = require( 'ethereum-sanction-check' )

async function main( { tests } ) {
    const check = new SanctionCheck( {
        'providerUrl': process.env.HTTP_NODE_PROVIDER,
        'chainalysisApiKey': process.env.CHAINALYSIS_API_KEY
    } )

    await check.start( { 'tests': tests } )
    check.print()
    return s.checks
}


main( { 'tests': 'vitalik.eth' } )
    .then( checks => console.log( checks ) )
    .catch( e => console.log( e ) )

LISTS with validation check

const SanctionCheck = require( 'ethereum-sanction-check' )

async function main( { tests } ) {
    const check = new SanctionCheck( {
        'providerUrl': process.env.HTTP_NODE_PROVIDER,
        'chainalysisApiKey': process.env.CHAINALYSIS_API_KEY
    } )

    await check.start( { 'tests': tests } )
    check.print()
    return s.checks
}

const tests = [ 
    '0x0000000000000000000000000000000000000001',
    '0x0000000000000000000000000000000000000002',
    '0x0000000000000000000000000000000000000003',
    null,
    1,
    'invalid'
 ]

main( { 'tests': tests } )
    .then( checks => console.log( checks ) )
    .catch( e => console.log( e ) )

Table of Contents
  1. Examples
  2. Quickstart
  3. Setup
  4. Options
  5. Contributing
  6. License
  7. Code of Conduct
  8. Support my Work

Quickstart
const SanctionCheck = require( 'ethereum-sanction-check' )

const check = new SanctionCheck( {
    'chainalysisApiKey': process.env.CHAINALYSIS_API_KEY
} )

const tests = [ '0x0000000000000000000000000000000000000000' ]

check.start( { 'tests': tests } )
    .then( s => { s.print() } )
    .catch( err => console.log( err ) )

Setup
npm i ethereum-sanction-check

Options

constructor()

const SanctionCheck = require( 'ethereum-sanction-check' )

const check = new SanctionCheck( { 
    'providerUrl': null, 
    'chainalysisApiKey': process.env.CHAINALYSIS_API_KEY
    'sleep': 1, 
    'provider': null 
} )
Name Type Required Default Description
providerUrl String No null Is only used for ENS Domainnames: LINK
chainalysisApiKey String Yes null You can find more Information here: LINK
sleep String No 0 Delay between queries in milliseconds
provider Etherjs Provider Object No null By default it will created for you. You can also pass the object y yourself: LINK

.start( { tests: [] } )

Name Type Required Default Description
tests String or Array Yes Insert your addresses here as Array or a single string

.print()
Console log all results.

.checks
Return results as array


Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/a6b8/ethereum-sanction-check-for-nodejs. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the code of conduct.


Limitations
  • Only chainalysis api included

Credits
License

The module is available as open source under the terms of the MIT License.


Code of Conduct

Everyone interacting in the Statosio project's codebases, issue trackers, chat rooms and mailing lists is expected to follow the code of conduct.


Star us

Please ⭐️ star this Project, every ⭐️ star makes us very happy!

About

This node module help to check if a account is sanction. Currently only chainalysis sanction api is support. Here you can find more Information: https://public.chainalysis.com/docs/index.html#create-an-api-key

Resources

License

Code of conduct

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published