Skip to main content

NEAR API REST Server

NEAR REST API Server is a project that allows you create your own simple REST API server that interacts with the NEAR blockchain.


Utils

/init

Configures near-api-server.config.json and creates a master account that stores credentials in this file. This allows for "simple methods" to be called where you won't have to pass as many parameters, primarily the master account id and private key or seed phrase.

ATTN: SERVER MUST BE RESTARTED AFTER CALLING THIS ENDPOINT

Method: POST

ParamDescription
master_account_idMaster account that has full access to the NFT contract below
seed_phrase OR private_keySeed phrase OR private key of the account id above.
nft_contractContract account that has NFT contract deployed to it
server_hostPublic IP address for your API server (localhost is default)
server_port(Port your API server will listen on)
rpc_nodeNetwork your server will be running on (testnet, mainnet, or betanet)

Note: Use near login to save your key pair to your local machine.

Example:

{
"master_account_id": "example.testnet",
"seed_phrase": "seed phrase for master_account_id goes here",
"nft_contract": "nft-contract.example.testnet",
"server_host": "localhost",
"server_port": 3000,
"rpc_node": "https://rpc.testnet.near.org"
}

Example Response:

{
"text": "Settings updated."
}

/create_user

Creates a NEAR sub-account using initialized master account and saves credentials to /storage directory. Requires /init configuration with master account.

Note: Only letters, digits, and - or _ separators are allowed.

Method: POST

Example:

{
"name" : "satoshi"
}

Example Response:

{
"text": "Account satoshi.example.testnet created. Public key: ed25519:HW4koiHqLi5WdVHWy9fqBWHbLRrzfmvCiRAUVhMa14T2"
}

/parse_seed_phrase

Converts seed phrase into public / private key pair.

Method: POST

Example:

{
"seed_phrase" : "witch collapse practice feed shame open despair creek road again ice least"
}

Example Response:

{
"seedPhrase": "witch collapse practice feed shame open despair creek road again ice least",
"secretKey": "ed25519:41oHMLtYygTsgwDzaMdjWRq48Sy9xJsitJGmMxgA9A7nvd65aT8vQwAvRdHi1nruPP47B6pNhW5T5TK8SsqCZmjn",
"publicKey": "ed25519:Cgg4i7ciid8uG4K5Vnjzy5N4PXLst5aeH9ApRAUA3y8U"
}