# Anvil API

The Anvil API empowers developers to rapidly build and deploy Cardano blockchain applications through a unified, developer-friendly interface. Whether you're creating a wallet with multi-signature capabilities, minting and managing NFT collections, implementing governance features, or interacting with smart contracts, Anvil eliminates the need to master complex low-level Cardano specifications while providing enterprise-grade reliability and performance.

## Key Benefits

### Reduced Complexity

Anvil handles the detailed protocol specifics, enabling developers to create transactions and smart contracts without mastering low-level details.

* **Simple transaction building**: Abstracted functions replace complex manual assembly.
* **Multi-signature support**: Define required signatures for transactions to allow shared control over assets.
* **Accessible learning curve**: Start building immediately, focusing on logic rather than specifications.

```json
// Instead of complex manual transaction assembly,
// Anvil API lets you create transactions with a clean, simple interface
// The following example shows how to send ADA and assets to a single participant easily.
{
  outputs: [
    {
      address: "addr...",  // Destination address
      lovelace: 10000000, // Send 10 ADA
      assets: [ // Assets to send
        {
          policyId: "policy_id_here",
          assetName: "asset_name",
          quantity: 1
        }
      ]
    }
  ],
  changeAddress: "addr..."  // Sender Address
}
```

### Faster Wallet Integration

Quickly integrate reliable transaction functionalities into wallets or payment apps.

* **Minimal coding effort**: Achieve common tasks like ADA transfers, asset transfers, delegation, minting, staking, or smart contract interactions through simple API endpoints.
* **Reliable and tested**: Consistent results reduce debugging and enhance product stability. Maintenance-free integration with automatic hard fork updates handled seamlessly.

### Streamlined NFT Minting

Efficiently mint NFTs through user-friendly "vending machine" style transactions and secure multisig minting capabilities.

* **Single-step minting**: Automate complex NFT minting, metadata handling, and delivery through intuitive endpoints.
* **Scalable & robust**: Supports both CIP-25 and CIP-68 token standards with minimal configuration.

```json
// Simplified NFT minting without needing to understand the underlying protocols
{
  mint: [
    {
      type: "simple",
      version: "cip25",
      assetName: { name: "MyNFT", format: "utf8" },
      policyId: "policy_id_here",
      quantity: 1,
      metadata: {
        name: "My NFT",
        description: "My first NFT minted with Anvil API",
        image: "ipfs://..."
      }
    }
  ]
}
```

### Smart Contract Simplification

Interact with Cardano smart contracts without deep Plutus knowledge.

* **Validator blueprints**: Use CIP-57 compliant blueprints to easily create and interact with Plutus scripts.
* **Automated datum handling**: Parse, construct, and validate complex Plutus data types with ease.
* **Contract evaluation**: Test your smart contract logic before deployment to ensure correct behavior.

```json
// Easy validation of Plutus contract data
// Instead of manual CBOR encoding/decoding
{
  hash: "validator_hash",
  type: "datum",
  purpose: "spend",
  data: { hex: "your_datum_hex" }
}
```

### Automatic Protocol Updates

Anvil stays updated with Cardano's protocol changes, eliminating maintenance burdens.

* **Zero downtime upgrades**: Continuous compatibility with the latest Cardano updates.
* **Maintenance-free**: Focus on feature development instead of ongoing technical upkeep.

## Features

Anvil API provides a comprehensive set of features to support your Cardano development needs:

1. **Multi-output Transaction Building**: Create complex transactions with multiple recipients
2. **Multi-signature Support**: Governance and shared control over assets with ease
3. **Token Minting**: Handles minting, editing, and burning for CIP-25 and CIP-68 tokens
4. **Staking Operations**: Streamlined delegations and certificates to stake pools and DReps
5. **Rewards Management**: Simplified reward withdrawal process
6. **Governance Support**: Delegate to DReps for voting in Cardano's governance system
7. **Transaction Optimization**: Automatic balancing and fee optimization
8. **Script Management**: Simplified on-chain script uploading
9. **Smart Contract Integration**: Contract evaluation and interaction via CIP-57 blueprints
10. **Language Agnostic API**: Build with your preferred technology stack through flexible API endpoints
11. **Multiple Protocol Support**: Choose between RESTful API and tRPC interfaces based on your development needs

## Next Steps

Ready to build with Anvil API? Choose your path:

New to Cardano?:

{% content-ref url="cardano-basics" %}
[cardano-basics](https://dev.ada-anvil.io/anvil-api/cardano-basics)
{% endcontent-ref %}

If you are a developer familiar with Cardano:

{% content-ref url="../guides/transaction/create-basic-transaction" %}
[create-basic-transaction](https://dev.ada-anvil.io/guides/transaction/create-basic-transaction)
{% endcontent-ref %}

{% content-ref url="fees" %}
[fees](https://dev.ada-anvil.io/anvil-api/fees)
{% endcontent-ref %}


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://dev.ada-anvil.io/anvil-api/readme.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
