GET
/accounts/{address}/module/{module_name}
Select target C C# Clojure Dart Go HTTP Java JavaScript Kotlin Node.js Objective-C OCaml PHP Powershell Python R Ruby Shell Swift Select client Curl Wget HTTPie Test request CURL * hnd = curl_easy_init ();
curl_easy_setopt (hnd, CURLOPT_CUSTOMREQUEST, " GET " );
curl_easy_setopt (hnd, CURLOPT_URL, " https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} " );
CURLcode ret = curl_easy_perform (hnd);
using System . Net . Http . Headers ;
var client = new HttpClient();
var request = new HttpRequestMessage
RequestUri = new Uri( " https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} " ),
using ( var response = await client . SendAsync (request))
response . EnsureSuccessStatusCode ();
var body = await response . Content . ReadAsStringAsync ();
var client = new RestClient( " https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} " );
var request = new RestRequest( Method . GET );
IRestResponse response = client . Execute (request);
( require '[clj-http.client :as client])
( client/get " https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} " )
import 'package:http/http.dart' as http;
final response = await http. get ( Uri . parse ( 'https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name}' ));
url := " https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} "
req , _ := http . NewRequest ( " GET " , url , nil )
res , _ := http . DefaultClient . Do ( req )
body , _ := io . ReadAll ( res . Body )
fmt . Println ( string ( body ))
GET /v1/accounts/{address}/module/{module_name} HTTP / 1.1
Host : api.mainnet.aptoslabs.com
AsyncHttpClient client = new DefaultAsyncHttpClient () ;
client . prepare ( " GET " , " https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} " )
. thenAccept ( System . out :: println )
HttpRequest request = HttpRequest . newBuilder ()
. uri ( URI . create ( " https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} " ))
. method ( " GET " , HttpRequest . BodyPublishers . noBody ())
HttpResponse < String > response = HttpClient . newHttpClient () . send ( request, HttpResponse . BodyHandlers . ofString ()) ;
System . out . println ( response . body ()) ;
OkHttpClient client = new OkHttpClient () ;
Request request = new Request. Builder ()
. url ( " https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} " )
Response response = client . newCall ( request ) . execute () ;
HttpResponse < String > response = Unirest . get ( " https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} " )
fetch ( ' https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} ' )
import axios from ' axios ' ;
url: ' https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} '
const { data } = await axios . request ( options );
import { ofetch } from ' ofetch '
ofetch ( ' https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} ' )
url: ' https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} ' ,
$ . ajax ( settings ) . done ( function ( response ) {
const xhr = new XMLHttpRequest ();
xhr . withCredentials = true ;
xhr . addEventListener ( ' readystatechange ' , function () {
if ( this . readyState === this . DONE ) {
console . log ( this . responseText );
xhr . open ( ' GET ' , ' https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} ' );
val client = OkHttpClient ()
val request = Request. Builder ()
. url ( "https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name}" )
val response = client. newCall (request). execute ()
fetch ( ' https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} ' )
const axios = require ( ' axios ' ) . default ;
url: ' https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} '
const { data } = await axios . request ( options );
import { ofetch } from ' ofetch '
ofetch ( ' https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} ' )
import { request } from ' undici '
const { statusCode , body } = await request ( ' https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} ' )
#import < Foundation/Foundation.h >
NSMutableURLRequest * request = [ NSMutableURLRequest requestWithURL : [ NSURL URLWithString : @" https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} " ]
cachePolicy : NSURLRequestUseProtocolCachePolicy
[request setHTTPMethod : @" GET " ];
NSURLSession * session = [NSURLSession sharedSession ];
NSURLSessionDataTask * dataTask = [session dataTaskWithRequest : request
completionHandler : ^ ( NSData * data, NSURLResponse * response, NSError * error) {
NSHTTPURLResponse * httpResponse = ( NSHTTPURLResponse * ) response;
NSLog ( @" %@ " , httpResponse);
let uri = Uri . of_string "https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name}" in
>>= fun (res, body_stream) ->
(* Do stuff with the result *)
$ch = curl_init ( " https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} " );
$client = new GuzzleHttp\ Client ();
$response = $client -> request ( ' GET ' , ' https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} ' );
$response = Invoke-WebRequest - Uri ' https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} ' - Method GET
$response = Invoke-RestMethod - Uri ' https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} ' - Method GET
conn = http.client. HTTPSConnection ( " api.mainnet.aptoslabs.com " )
conn. request ( " GET " , " /v1/accounts/ {address} /module/ {module_name} " )
print ( data. decode ( " utf-8 " ))
" https://api.mainnet.aptoslabs.com/v1/accounts/ {address} /module/ {module_name} "
" https://api.mainnet.aptoslabs.com/v1/accounts/ {address} /module/ {module_name} "
with httpx. AsyncClient () as client:
" https://api.mainnet.aptoslabs.com/v1/accounts/ {address} /module/ {module_name} "
url <- " https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} "
response <- VERB ( " GET " , url, content_type ( " application/octet-stream " ))
content ( response, " text " )
url = URI ( " https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} " )
http = Net :: HTTP . new (url. host , url. port )
request = Net :: HTTP :: Get . new (url)
response = http. request (request)
curl ' https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} '
- https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name}
http GET https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name}
let request = NSMutableURLRequest ( url : NSURL ( string : " https://api.mainnet.aptoslabs.com/v1/accounts/{address}/module/{module_name} " ) ! as URL,
cachePolicy : . useProtocolCachePolicy ,
request. httpMethod = " GET "
let session = URLSession. shared
let dataTask = session. dataTask ( with : request as URLRequest, completionHandler : { (data, response, error) -> Void in
let httpResponse = response as? HTTPURLResponse
Retrieves an individual module from a given account and at a specific ledger version. If the
ledger version is not specified in the request, the latest ledger version is used.
The Aptos nodes prune account state history, via a configurable time window.
If the requested ledger version has been pruned, the server responds with a 410.
Parameters Path Parameters A hex encoded 32 byte Aptos account address.
This is represented in a string as a 64 character hex string, sometimes
shortened by stripping leading 0s, and adding a 0x.
For example, address 0x0000000000000000000000000000000000000000000000000000000000000001 is represented as 0x1.
string format: hex
0x88fbd33f54e1126269769780feb24480428179f552e2313fbe571b72e62a1ca1
Address of account with or without a 0x
prefix
string
Name of module to retrieve e.g. coin
Query Parameters ledger_version
A string containing a 64-bit unsigned integer.
We represent u64 values as a string to ensure compatibility with languages such
as JavaScript that do not parse u64s in JSON natively.
string format: uint64
Ledger version to get state of account
If not provided, it will be the latest version
Responses 200
Select media type application/json application/x-bcs Move module bytecode along with it’s ABI
object All bytes (Vec) data is represented as hex-encoded string prefixed with 0x
and fulfilled with
two hex digits per byte.
Unlike the Address
type, HexEncodedBytes will not trim any zeros.
string format: hex
0x88fbd33f54e1126269769780feb24480428179f552e2313fbe571b72e62a1ca1
abi
object A hex encoded 32 byte Aptos account address.
This is represented in a string as a 64 character hex string, sometimes
shortened by stripping leading 0s, and adding a 0x.
For example, address 0x0000000000000000000000000000000000000000000000000000000000000001 is represented as 0x1.
string format: hex
0x88fbd33f54e1126269769780feb24480428179f552e2313fbe571b72e62a1ca1
exposed_functions required
Public functions of the module
Array<object>
object string
Allowed values: private public friend
Whether the function can be called as an entry function directly in a transaction
boolean
Whether the function is a view function or not
boolean
generic_type_params required
Generic type params associated with the Move function
Array<object>
Move function generic type param
object Move abilities tied to the generic type param and associated with the function that uses it
Array<string>
Parameters associated with the move function
Array<string>
Return type of the function
Array<string>
Array<object>
object Whether the struct is a native struct of Move
boolean
Whether the struct is marked with the #[event] annotation
boolean
Abilities associated with the struct
Array<string>
generic_type_params required
Generic types associated with the struct
Array<object>
object Move abilities tied to the generic type param and associated with the type that uses it
Array<string>
Fields associated with the struct
Array<object>
object String representation of an on-chain Move type tag that is exposed in transaction payload.
Values:
- bool
- u8
- u16
- u32
- u64
- u128
- u256
- address
- signer
- vector: vector<{non-reference MoveTypeId}>
- struct: {address}::{module_name}::{struct_name}::<{generic types}>
Vector type value examples:
- `vector<u8>`
- `vector<vector<u64>>`
- `vector<0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>>`
Struct type value examples:
- `0x1::coin::CoinStore<0x1::aptos_coin::AptosCoin>
- `0x1::account::Account`
Note:
1. Empty chars should be ignored when comparing 2 struct tag ids.
2. When used in an URL path, should be encoded by url-encoding (AKA percent-encoding).
string
/^(bool|u8|u64|u128|address|signer|vector<.+>|0x[0-9a-zA-Z:_<, >]+)$/
X-APTOS-CHAIN-ID required
integer format: uint8
Chain ID of the current chain
X-APTOS-LEDGER-VERSION required
integer format: uint64
Current ledger version of the chain
X-APTOS-LEDGER-OLDEST-VERSION required
integer format: uint64
Oldest non-pruned ledger version of the chain
X-APTOS-LEDGER-TIMESTAMPUSEC required
integer format: uint64
Current timestamp of the chain
integer format: uint64
Current epoch of the chain
X-APTOS-BLOCK-HEIGHT required
integer format: uint64
Current block height of the chain
X-APTOS-OLDEST-BLOCK-HEIGHT required
integer format: uint64
Oldest non-pruned block height of the chain
X-APTOS-GAS-USED
integer format: uint64
The cost of the call in terms of gas
X-APTOS-CURSOR
string
Cursor to be used for endpoints that support cursor-based
pagination. Pass this to the start
field of the endpoint
on the next call to get the next page of results.
400
application/json
This is the generic struct we use for all API errors, it contains a string
message and an Aptos API specific error code.
object A message describing the error
string
These codes provide more granular error information beyond just the HTTP
status code of the response.
string
Allowed values: account_not_found resource_not_found module_not_found struct_field_not_found version_not_found transaction_not_found table_item_not_found block_not_found state_value_not_found version_pruned block_pruned invalid_input invalid_transaction_update sequence_number_too_old vm_error health_check_failed mempool_is_full internal_error web_framework_error bcs_not_supported api_disabled
vm_error_code
A code providing VM error details when submitting transactions to the VM
integer format: uint64
X-APTOS-CHAIN-ID
integer format: uint8
Chain ID of the current chain
X-APTOS-LEDGER-VERSION
integer format: uint64
Current ledger version of the chain
X-APTOS-LEDGER-OLDEST-VERSION
integer format: uint64
Oldest non-pruned ledger version of the chain
X-APTOS-LEDGER-TIMESTAMPUSEC
integer format: uint64
Current timestamp of the chain
X-APTOS-EPOCH
integer format: uint64
Current epoch of the chain
X-APTOS-BLOCK-HEIGHT
integer format: uint64
Current block height of the chain
X-APTOS-OLDEST-BLOCK-HEIGHT
integer format: uint64
Oldest non-pruned block height of the chain
X-APTOS-GAS-USED
integer format: uint64
The cost of the call in terms of gas
403
application/json
This is the generic struct we use for all API errors, it contains a string
message and an Aptos API specific error code.
object A message describing the error
string
These codes provide more granular error information beyond just the HTTP
status code of the response.
string
Allowed values: account_not_found resource_not_found module_not_found struct_field_not_found version_not_found transaction_not_found table_item_not_found block_not_found state_value_not_found version_pruned block_pruned invalid_input invalid_transaction_update sequence_number_too_old vm_error health_check_failed mempool_is_full internal_error web_framework_error bcs_not_supported api_disabled
vm_error_code
A code providing VM error details when submitting transactions to the VM
integer format: uint64
X-APTOS-CHAIN-ID
integer format: uint8
Chain ID of the current chain
X-APTOS-LEDGER-VERSION
integer format: uint64
Current ledger version of the chain
X-APTOS-LEDGER-OLDEST-VERSION
integer format: uint64
Oldest non-pruned ledger version of the chain
X-APTOS-LEDGER-TIMESTAMPUSEC
integer format: uint64
Current timestamp of the chain
X-APTOS-EPOCH
integer format: uint64
Current epoch of the chain
X-APTOS-BLOCK-HEIGHT
integer format: uint64
Current block height of the chain
X-APTOS-OLDEST-BLOCK-HEIGHT
integer format: uint64
Oldest non-pruned block height of the chain
X-APTOS-GAS-USED
integer format: uint64
The cost of the call in terms of gas
404
application/json
This is the generic struct we use for all API errors, it contains a string
message and an Aptos API specific error code.
object A message describing the error
string
These codes provide more granular error information beyond just the HTTP
status code of the response.
string
Allowed values: account_not_found resource_not_found module_not_found struct_field_not_found version_not_found transaction_not_found table_item_not_found block_not_found state_value_not_found version_pruned block_pruned invalid_input invalid_transaction_update sequence_number_too_old vm_error health_check_failed mempool_is_full internal_error web_framework_error bcs_not_supported api_disabled
vm_error_code
A code providing VM error details when submitting transactions to the VM
integer format: uint64
X-APTOS-CHAIN-ID
integer format: uint8
Chain ID of the current chain
X-APTOS-LEDGER-VERSION
integer format: uint64
Current ledger version of the chain
X-APTOS-LEDGER-OLDEST-VERSION
integer format: uint64
Oldest non-pruned ledger version of the chain
X-APTOS-LEDGER-TIMESTAMPUSEC
integer format: uint64
Current timestamp of the chain
X-APTOS-EPOCH
integer format: uint64
Current epoch of the chain
X-APTOS-BLOCK-HEIGHT
integer format: uint64
Current block height of the chain
X-APTOS-OLDEST-BLOCK-HEIGHT
integer format: uint64
Oldest non-pruned block height of the chain
X-APTOS-GAS-USED
integer format: uint64
The cost of the call in terms of gas
410
application/json
This is the generic struct we use for all API errors, it contains a string
message and an Aptos API specific error code.
object A message describing the error
string
These codes provide more granular error information beyond just the HTTP
status code of the response.
string
Allowed values: account_not_found resource_not_found module_not_found struct_field_not_found version_not_found transaction_not_found table_item_not_found block_not_found state_value_not_found version_pruned block_pruned invalid_input invalid_transaction_update sequence_number_too_old vm_error health_check_failed mempool_is_full internal_error web_framework_error bcs_not_supported api_disabled
vm_error_code
A code providing VM error details when submitting transactions to the VM
integer format: uint64
X-APTOS-CHAIN-ID
integer format: uint8
Chain ID of the current chain
X-APTOS-LEDGER-VERSION
integer format: uint64
Current ledger version of the chain
X-APTOS-LEDGER-OLDEST-VERSION
integer format: uint64
Oldest non-pruned ledger version of the chain
X-APTOS-LEDGER-TIMESTAMPUSEC
integer format: uint64
Current timestamp of the chain
X-APTOS-EPOCH
integer format: uint64
Current epoch of the chain
X-APTOS-BLOCK-HEIGHT
integer format: uint64
Current block height of the chain
X-APTOS-OLDEST-BLOCK-HEIGHT
integer format: uint64
Oldest non-pruned block height of the chain
X-APTOS-GAS-USED
integer format: uint64
The cost of the call in terms of gas
500
application/json
This is the generic struct we use for all API errors, it contains a string
message and an Aptos API specific error code.
object A message describing the error
string
These codes provide more granular error information beyond just the HTTP
status code of the response.
string
Allowed values: account_not_found resource_not_found module_not_found struct_field_not_found version_not_found transaction_not_found table_item_not_found block_not_found state_value_not_found version_pruned block_pruned invalid_input invalid_transaction_update sequence_number_too_old vm_error health_check_failed mempool_is_full internal_error web_framework_error bcs_not_supported api_disabled
vm_error_code
A code providing VM error details when submitting transactions to the VM
integer format: uint64
X-APTOS-CHAIN-ID
integer format: uint8
Chain ID of the current chain
X-APTOS-LEDGER-VERSION
integer format: uint64
Current ledger version of the chain
X-APTOS-LEDGER-OLDEST-VERSION
integer format: uint64
Oldest non-pruned ledger version of the chain
X-APTOS-LEDGER-TIMESTAMPUSEC
integer format: uint64
Current timestamp of the chain
X-APTOS-EPOCH
integer format: uint64
Current epoch of the chain
X-APTOS-BLOCK-HEIGHT
integer format: uint64
Current block height of the chain
X-APTOS-OLDEST-BLOCK-HEIGHT
integer format: uint64
Oldest non-pruned block height of the chain
X-APTOS-GAS-USED
integer format: uint64
The cost of the call in terms of gas
503
application/json
This is the generic struct we use for all API errors, it contains a string
message and an Aptos API specific error code.
object A message describing the error
string
These codes provide more granular error information beyond just the HTTP
status code of the response.
string
Allowed values: account_not_found resource_not_found module_not_found struct_field_not_found version_not_found transaction_not_found table_item_not_found block_not_found state_value_not_found version_pruned block_pruned invalid_input invalid_transaction_update sequence_number_too_old vm_error health_check_failed mempool_is_full internal_error web_framework_error bcs_not_supported api_disabled
vm_error_code
A code providing VM error details when submitting transactions to the VM
integer format: uint64
X-APTOS-CHAIN-ID
integer format: uint8
Chain ID of the current chain
X-APTOS-LEDGER-VERSION
integer format: uint64
Current ledger version of the chain
X-APTOS-LEDGER-OLDEST-VERSION
integer format: uint64
Oldest non-pruned ledger version of the chain
X-APTOS-LEDGER-TIMESTAMPUSEC
integer format: uint64
Current timestamp of the chain
X-APTOS-EPOCH
integer format: uint64
Current epoch of the chain
X-APTOS-BLOCK-HEIGHT
integer format: uint64
Current block height of the chain
X-APTOS-OLDEST-BLOCK-HEIGHT
integer format: uint64
Oldest non-pruned block height of the chain
X-APTOS-GAS-USED
integer format: uint64
The cost of the call in terms of gas