Bash & cURL

Learn how to create a custom Cardano transaction using Bash and cURL with the Anvil API.

Need a wallet address?

You can use the Anvil Wallet CLI to generate a wallet and get an address for these examples.

https://github.com/Cardano-Forge/anvil-api-examples/blob/main/documentation-references/custom-tx.sh
# Wallets
SENDER_ADDR="addr_test1qq7fc3ke49nkcsfglltut7apa9t3gdul4utwhxt6j2hdrw7pg4vk6erdshyhdj5xeq0vh8qdy34cpdfstvc8l9su8hgq679eew"
RECEIVER_ADDR_1="addr_test1qrydyk6uw6cehk5u3zspyz3dhnwzmhfls2fp42vv5dv9g2z3885pg4kpkn30ptezc855lu3w5ey93zcr5lrezjmwkftqg8xvge"
RECEIVER_ADDR_2="addr_test1qr0tkwvlln0v5fljdxceudmlpt5y6szc84vpj4skm836tgn4hsqaesgg97l8ppy5rsn0alj8pth6lqe20fdyydsdgw6sr74cyt"

# Resources
POLICY_ID="360fd38656e5204f22ec058d18d5a90c18745ca8325e51d077c38a13"
ASSET_NAME_1="616e76696c61706963697032355f333837393837393739"
ASSET_NAME_2="616e76696c61706963697032355f333837393732"

# See Authentication page for API key details.
X_API_KEY="testnet_EyrkvCWDZqjkfLSe1pxaF0hXxUcByHEhHuXIBjt9"
API_URL="https://preprod.api.ada-anvil.app/v2/services"


curl -X POST \
    -H "Content-Type: application/json" \
    -H "X-Api-Key: ${X_API_KEY}" \
    -d '{
        "changeAddress": "'${SENDER_ADDR}'",
        "outputs": [
            {
                "address": "'${RECEIVER_ADDR_1}'",
                "lovelace": 10000000,
                "assets": [{
                    "assetName": "'${ASSET_NAME_1}'",
                    "policyId": "'${POLICY_ID}'",
                    "quantity": 1
                }]
            },
            {
                "address": "'${RECEIVER_ADDR_2}'",
                "lovelace": 5000000,
                "assets": [{
                    "assetName": "'${ASSET_NAME_2}'",
                    "policyId": "'${POLICY_ID}'",
                    "quantity": 1
                }]
            }
        ]
    }' \
    ${API_URL}/transactions/build

# Expected Output
# {"hash":"24fcc917d867deab42f5872791011f4ef085f2b4b512d531881b565e93fbbdfe","complete":"84a600d90102838258205bf3681e7bfe3322c5e05cda80a5a784177d3239f1aae6d929c8a86be3474198018258206a6bb5dafa917de09a2b727d4050c785f59f39f1b819e43a34570c8a5377cadf00825820a57f5f67e1942a8e002f2eb6a518953dd36c796b93800bce898399d15121f26601018482583900c8d25b5c76b19bda9c88a0120a2dbcdc2ddd3f82921aa98ca35854285139e81456c1b4e2f0af22c1e94ff22ea648588b03a7c7914b6eb256821a00989680a1581c360fd38656e5204f22ec058d18d5a90c18745ca8325e51d077c38a13a157616e76696c61706963697032355f3338373938373937390182583900debb399ffcdeca27f269b19e377f0ae84d40583d58195616d9e3a5a275bc01dcc1082fbe7084941c26fefe470aefaf832a7a5a42360d43b5821a004c4b40a1581c360fd38656e5204f22ec058d18d5a90c18745ca8325e51d077c38a13a154616e76696c61706963697032355f33383739373201a300581d60c1a9e90adb24b9670f171d8fc38c029de42e5d081bd7142ebd54d699011a00155cc0028201d8184a49616e76696c2d746167825839003c9c46d9a9676c4128ffd7c5fba1e95714379faf16eb997a92aed1bbc145596d646d85c976ca86c81ecb9c0d246b80b5305b307f961c3dd0821a1c5c8558a1581c360fd38656e5204f22ec058d18d5a90c18745ca8325e51d077c38a13a3581b616e76696c61706963697032355f3137343130333330373738303401581b616e76696c61706963697032355f3137343130333331383531353001581b616e76696c61706963697032355f3137343133363330393135333801021a0003429d031a052214ad081a0521f88d0ed9010281581cc1a9e90adb24b9670f171d8fc38c029de42e5d081bd7142ebd54d699a100d9010281825820611bd4b7fb0e1609614dfb1fcf6f20718235b8e0dbd00702b5050f2a521040825840f7940eb0e0f0e45b8e0e0c7032695efd183a48187d9bf0286bee60f33884a50bd80adfc5c6bf770844ee945fcceee36d4927aca3e1a9ec65bdcd225eea61bb03f5f6","stripped":"84a600d90102838258205bf3681e7bfe3322c5e05cda80a5a784177d3239f1aae6d929c8a86be3474198018258206a6bb5dafa917de09a2b727d4050c785f59f39f1b819e43a34570c8a5377cadf00825820a57f5f67e1942a8e002f2eb6a518953dd36c796b93800bce898399d15121f26601018482583900c8d25b5c76b19bda9c88a0120a2dbcdc2ddd3f82921aa98ca35854285139e81456c1b4e2f0af22c1e94ff22ea648588b03a7c7914b6eb256821a00989680a1581c360fd38656e5204f22ec058d18d5a90c18745ca8325e51d077c38a13a157616e76696c61706963697032355f3338373938373937390182583900debb399ffcdeca27f269b19e377f0ae84d40583d58195616d9e3a5a275bc01dcc1082fbe7084941c26fefe470aefaf832a7a5a42360d43b5821a004c4b40a1581c360fd38656e5204f22ec058d18d5a90c18745ca8325e51d077c38a13a154616e76696c61706963697032355f33383739373201a300581d60c1a9e90adb24b9670f171d8fc38c029de42e5d081bd7142ebd54d699011a00155cc0028201d8184a49616e76696c2d746167825839003c9c46d9a9676c4128ffd7c5fba1e95714379faf16eb997a92aed1bbc145596d646d85c976ca86c81ecb9c0d246b80b5305b307f961c3dd0821a1c5c8558a1581c360fd38656e5204f22ec058d18d5a90c18745ca8325e51d077c38a13a3581b616e76696c61706963697032355f3137343130333330373738303401581b616e76696c61706963697032355f3137343130333331383531353001581b616e76696c61706963697032355f3137343133363330393135333801021a0003429d031a052214ad081a0521f88d0ed9010281581cc1a9e90adb24b9670f171d8fc38c029de42e5d081bd7142ebd54d699a0f5f6","witnessSet":"a100d9010281825820611bd4b7fb0e1609614dfb1fcf6f20718235b8e0dbd00702b5050f2a521040825840f7940eb0e0f0e45b8e0e0c7032695efd183a48187d9bf0286bee60f33884a50bd80adfc5c6bf770844ee945fcceee36d4927aca3e1a9ec65bdcd225eea61bb03"}

Last updated

Was this helpful?