Sign inSign up

polyflowdev/autofunder

By polyflowdev

•Updated over 3 years ago

Image
0

243

polyflowdev/autofunder repository overview

⁠Autofunder Service

Service which provides API for sending assets on arbitrary EVM-compatible blockchain.

⁠Docker Setup

The simplest possible docker-compose.yml to correctly run this service is as follows:

version: '3.7'

services:
  autofunder:
    image: polyflowdev/autofunder:1.0.0
    environment:
      - "autofunder.blockchain.rpcUrl=<rpc-url>"
    ports:
      - "8080:8080"

It is however strongly recommended to assign volumes for service database and logs (/database and /logs) to prevent data loss and for error-reporting purposes. If the service wallet address and funding contract are set-up via API calls, then preserving the database is especially important since they will be stored there. Assigning a dedicated volume for logs is recommended to make it easier to report possible service errors.

An example of recommended docker-compose.yml for Mumbai Testnet is as follows:

version: '3.7'

services:
  autofunder:
    image: polyflowdev/autofunder:1.0.0
    environment:
      - "autofunder.blockchain.rpcUrl=https://rpc-mumbai.maticvigil.com"
    volumes:
      - ./logs:/logs
      - ./db:/database
    ports:
      - "8080:8080"

⁠API Documentation

Service API documentation is provided on endpoint /docs/index.html. If the service was deployed via the previously provided docker-compose.yml example, then the API will be available at http://localhost:8080/docs/index.html.

⁠Application Properties

Additional application properties can be defined via docker-compose environment variables in format "<property-name>=<property-value>". Available application properties are:

  • autofunder.apiKeys - List of comma-separated API keys which will have access to the service API. If left undefined, no API key will be required to access the API.
  • autofunder.blockchain.rpcUrl - RPC URL provider for desired EVM compatible chain. This property is mandatory.
  • autofunder.blockchain.walletPrivateKey - Service wallet private key, in hexadecimal format. This property is optional and the wallet can be generated via service API call.
  • autofunder.blockchain.fundingContractAddress - Funding contract address. This property is optional and the funding contract can be deployed via service API call.
  • autofunder.blockchain.baseGasLimit - Base gas limit for send transactions. Default value is 75000.
  • autofunder.blockchain.perItemGasLimit - Gas limit per send item in single send transaction. Default value is 10000.
  • autofunder.blockchain.contractDeployGasLimit - Gas limit for contract deployment. Default value is 2500000.

⁠Reporting Errors

If you wist to report any errors that the service has, send an email to [email protected]⁠ with the service version, error description and service logs at the time the error occurred.
Note: NEVER send your database if you generated service wallet via service API key, as it will contain your service wallet private key.

Tag summary

Content type

Image

Digest

sha256:0f951e466…

Size

138.2 MB

Last updated

over 3 years ago

docker pull polyflowdev/autofunder