Skip to content
GET /v1/modules

List the Move modules at an account with function/struct counts

Try it live

10 free calls per day — no sign-up, no API key. Goes through the oanor gateway.

Custom headers (optional)
api.oanor.com/aptosmodules-api

It works. Grab an API key and use it in your project.

Get an API key

Code snippets

curl "https://api.oanor.com/aptosmodules-api/v1/modules" \
  -H "x-oanor-key: oanor_test_..."
await fetch("https://api.oanor.com/aptosmodules-api/v1/modules", {
  headers: { "x-oanor-key": "oanor_test_..." }
});
$ch = curl_init("https://api.oanor.com/aptosmodules-api/v1/modules");
curl_setopt($ch, CURLOPT_HTTPHEADER, ["x-oanor-key: oanor_test_..."]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
$out = curl_exec($ch);
import requests
requests.get(
    "https://api.oanor.com/aptosmodules-api/v1/modules",
    headers={"x-oanor-key": "oanor_test_..."}
)

Example response

A real response from this endpoint, captured by the latest health check.

{
    "data": {
        "note": "Move modules published at this account. Each shows how many exposed functions (and how many are entry / view) and structs it has. Use /v1/module?name=<n> for the full ABI.",
        "count": 150,
        "source": "Aptos fullnode REST",
        "address": "0x1",
        "modules": [
            {
                "name": "account",
                "address": "0x1",
                "view_count": 9,
                "entry_count": 12,
                "struct_count": 16,
                "function_count": 38
            },
            {
                "name": "account_abstraction",
                "address": "0x1",
                "view_count": 3,
                "entry_count": 8,
                "struct_count": 5,
                "function_count": 12
            },
            {
                "name": "acl",
                "address": "0x1",
                "view_count": 0,
                "entry_count": 0,
                "struct_count": 1,
                "function_count": 5
            },
            {
                "name": "aggregator",
                "address": "0x1",
                "view_count": 0,
                "entry_count": 0,
                "struct_count": 1,
                "function_count": 5
            },
            {
                "name": "aggregator_factory",
                "address": "0x1",
                "view_count": 0,
                "entry_count": 0,
                "struct_count": 1,
                "function_count": 3
            },
            {
                "name": "aggregator_v2",
                "address": "0x1",
                "view_count": 0,
                "entry_count": 0,
                "struct_count": 3,
                "function_count": 19
            },
            {
                "name": "any",
                "address": "0x1",
                "view_count": 0,
                "entry_count": 0,
                "struct_count": 1,
                "function_count": 3
            },
            {
                "name": "aptos_account",
                "address": "0x1",
                "view_count": 1,
                "entry_count": 9,
                "struct_count": 3,
                "function_count": 17
            },
            {
                "name": "aptos_coin",
                "address": "0x1",
                "view_count": 0,
                "entry_count": 3,
                "struct_count": 4,
                "function_count": 7
            },
            {
                "name": "aptos_governance",
                "address": "0x1",
                "view_count": 6,
                "entry_count": 10,
                "struct_count": 14,
                "function_count": 28
            },
            {
                "name": "aptos_hash",
                "address": "0x1",
                "view_count": 0,
                "entry_count": 0,
                "struct_count": 0,
                "function_count": 8
            },
            {
                "na
…