Program ID
Every Aleo program has a unique identifier in the format name.aleo. Once deployed, this ID is permanent - no other program can use the same name on that network.
leo
program my_token.aleo {
@noupgrade
constructor() {}
fn ping() {}
}
Program IDs are used in imports, cross-program calls, and the REST API. When querying the network for program state or calling a specific transition, you reference the program by its ID.
Choose program names carefully - you can't rename or redeploy to the same ID. During development, use descriptive names that won't collide on testnet or mainnet.