LOGBOOK

HELP

Quiz Entry - updated: 2026.07.30

What is the ABI, and why does importing a contract or interface give you its ABI?

The ABI (Application Binary Interface) is the machine-readable list of a contract's functions and how to call them — the inputs, outputs, and signatures. To interact with any contract you need two things: its address and its ABI.

The ABI describes how to talk to a contract — which functions exist and what arguments/return types they have — without any of the implementation logic. Whenever you compile a contract in Remix, the ABI is produced alongside the bytecode (visible under "compilation details"). Key consequence: when you import a contract or an interface, compiling it yields that ABI automatically, which is exactly what lets your code call the imported contract's functions. An interface is the minimal way to get an ABI — it lists function declarations with no bodies:

interface AggregatorV3Interface {
    function latestRoundData() external view returns (uint80, int256, uint256, uint256, uint80);
}

Compiling this gives you the ABI to interact with any deployed contract at a known address that implements it.

Go deeper:

From Quiz: IOTHACK / Smart Contracts & the Remix IDE | Updated: Jul 30, 2026