algokit_utils.clients.dispenser_api_client
algokit_utils.clients.dispenser_api_client
Section titled “algokit_utils.clients.dispenser_api_client”Attributes
Section titled “Attributes”DISPENSER_ASSETS | |
|---|---|
DISPENSER_REQUEST_TIMEOUT | |
DISPENSER_ACCESS_TOKEN_KEY |
Classes
Section titled “Classes”DispenserApiConfig | |
|---|---|
DispenserAssetName | Enum where members are also (and must be) ints |
DispenserAsset | |
DispenserFundResponse | |
DispenserLimitResponse | |
TestNetDispenserApiClient | Client for interacting with the AlgoKit TestNet Dispenser API. |
Module Contents
Section titled “Module Contents”class DispenserApiConfig
Section titled “class DispenserApiConfig”BASE_URL = ‘https://api.dispenser.algorandfoundation.tools’
Section titled “BASE_URL = ‘https://api.dispenser.algorandfoundation.tools’”class DispenserAssetName
Section titled “class DispenserAssetName”Bases: enum.IntEnum
Enum where members are also (and must be) ints
ALGO = 0
Section titled “ALGO = 0”class DispenserAsset
Section titled “class DispenserAsset”asset_id : int
Section titled “asset_id : int”The ID of the asset
decimals : int
Section titled “decimals : int”The amount of decimal places the asset was created with
description : str
Section titled “description : str”The description of the asset
class DispenserFundResponse
Section titled “class DispenserFundResponse”tx_id : str
Section titled “tx_id : str”The transaction ID of the funded transaction
amount : int
Section titled “amount : int”The amount of Algos funded
class DispenserLimitResponse
Section titled “class DispenserLimitResponse”amount : int
Section titled “amount : int”The amount of Algos that can be funded
DISPENSER_ASSETS
Section titled “DISPENSER_ASSETS”DISPENSER_REQUEST_TIMEOUT = 15
Section titled “DISPENSER_REQUEST_TIMEOUT = 15”DISPENSER_ACCESS_TOKEN_KEY = ‘ALGOKIT_DISPENSER_ACCESS_TOKEN’
Section titled “DISPENSER_ACCESS_TOKEN_KEY = ‘ALGOKIT_DISPENSER_ACCESS_TOKEN’”class TestNetDispenserApiClient(auth_token: str | None = None, request_timeout: int = DISPENSER_REQUEST_TIMEOUT)
Section titled “class TestNetDispenserApiClient(auth_token: str | None = None, request_timeout: int = DISPENSER_REQUEST_TIMEOUT)”Client for interacting with the AlgoKit TestNet Dispenser API. To get started create a new access token via algokit dispenser login –ci and pass it to the client constructor as auth_token. Alternatively set the access token as environment variable ALGOKIT_DISPENSER_ACCESS_TOKEN, and it will be auto loaded. If both are set, the constructor argument takes precedence.
Default request timeout is 15 seconds. Modify by passing request_timeout to the constructor.
auth_token : str
Section titled “auth_token : str”request_timeout = 15
Section titled “request_timeout = 15”fund(address: str, amount: int, asset_id: int | None = None) → DispenserFundResponse
Section titled “fund(address: str, amount: int, asset_id: int | None = None) → DispenserFundResponse”Fund an account with Algos from the dispenser API
- Parameters:
- address – The address to fund
- amount – The amount of Algos to fund
- asset_id – The asset ID to fund (deprecated)
- Returns: The transaction ID of the funded transaction
- Raises: Exception – If the dispenser API request fails
- Example:
dispenser_client = TestNetDispenserApiClient()dispenser_client.fund(address="SENDER_ADDRESS", amount=1000000)
refund(refund_txn_id: str) → None
Section titled “refund(refund_txn_id: str) → None”Register a refund for a transaction with the dispenser API
get_limit(address: str) → DispenserLimitResponse
Section titled “get_limit(address: str) → DispenserLimitResponse”Get current limit for an account with Algos from the dispenser API