Skip to main content

MOUNTAIN Public API (3.0)

MOUNTAIN Public API for Developers

Project

getProjects

Authorizations:
public-api-access-token

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "meta": { }
}

getProjectDetail

Authorizations:
public-api-project-api-keypublic-api-access-token

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "meta": { }
}

Event Notifier

createEventNotifierSubscription

Authorizations:
public-api-project-api-keypublic-api-access-token
Request Body schema: application/json
required
subscriptionName
required
string

Subscription name

networkId
required
number
Enum: 1 137 42161 11155111 80002 421614 1337

Network ID

address
required
string

Contract address

formattedAbiEvent
required
string

Complete ABI event definition including parameter names and types. Use abitype's formatAbiItem() to generate this format from raw ABI.

initialBlockNumber
required
number >= 0

Initial block number to start scanning from

scanInterval
required
number >= 5

Scan interval in seconds

webhookURL
string <uri>

Webhook URL for notifications

webhookMaxRetries
number >= 0

Maximum number of webhook retry attempts

Responses

Request samples

Content type
application/json
{
  • "subscriptionName": "Transfer Subscription",
  • "networkId": 1,
  • "address": "0x1234567890123456789012345678901234567890",
  • "formattedAbiEvent": "event Transfer(address indexed from, address indexed to, uint256 value)",
  • "initialBlockNumber": 1000000,
  • "scanInterval": 10,
  • "webhookMaxRetries": 3
}

Response samples

Content type
application/json
{
  • "eventNotifierSubscription": {
    }
}

getEventNotifierSubscriptions

Authorizations:
public-api-project-api-keypublic-api-access-token

Responses

Response samples

Content type
application/json
{
  • "eventNotifierSubscriptions": [
    ]
}

updateEventNotifierSubscriptionWebhook

Authorizations:
public-api-project-api-keypublic-api-access-token
Request Body schema: application/json
required
id
required
string

Subscription ID

webhookEnabled
boolean

Enable or disable webhook

webhookURL
string <uri>

Webhook URL for notifications

webhookMaxRetries
number >= 0

Maximum number of webhook retry attempts

Responses

Request samples

Content type
application/json
{}

Response samples

Content type
application/json
{
  • "eventNotifierSubscription": {
    }
}

getEventNotifierRecords

Authorizations:
public-api-project-api-keypublic-api-access-token
Request Body schema: application/json
required
subscriptionId
required
string

Event Notifier Subscription ID

Responses

Request samples

Content type
application/json
{
  • "subscriptionId": "123e4567-e89b-12d3-a456-426614174000"
}

Response samples

Content type
application/json
{
  • "eventNotifierRecords": [
    ]
}

resendFailedWebhook

Authorizations:
public-api-project-api-keypublic-api-access-token
Request Body schema: application/json
required
subscriptionId
required
string

Event Notifier Subscription ID

force
boolean

Force resend webhook even if webhook is disabled or max retries has been reached

Responses

Request samples

Content type
application/json
{
  • "subscriptionId": "123e4567-e89b-12d3-a456-426614174000",
  • "force": false
}

Response samples

Content type
application/json
{
  • "record": {
    }
}

Contract

getContracts

Authorizations:
public-api-project-api-keypublic-api-access-token

Responses

Response samples

Content type
application/json
{
  • "contracts": [
    ]
}

importContract

Authorizations:
public-api-project-api-keypublic-api-access-token
Request Body schema: application/json
required
networkId
required
number
Enum: 1 137 42161 11155111 80002 421614 1337

Network ID

address
required
string

Contract address

formattedAbi
required
Array of strings

Formatted ABI by abitype using formatAbi. Can be parsed by viem using parseAbi.

Responses

Request samples

Content type
application/json
{
  • "networkId": 1,
  • "address": "0x1234567890123456789012345678901234567890",
  • "formattedAbi": "[\"function mint(address to, uint256 amount)\"]"
}

Response samples

Content type
application/json
{
  • "contract": {
    }
}

activateContractFunction

Authorizations:
public-api-project-api-keypublic-api-access-token
Request Body schema: application/json
required
contractId
required
number

Contract ID

formattedAbiFunction
required
string

Complete ABI function definition including parameter names and types. Use abitype's formatAbiItem() to generate this format from raw ABI.

Responses

Request samples

Content type
application/json
{
  • "contractId": 1,
  • "formattedAbiFunction": "function mint(address to, uint256 amount)"
}

Response samples

Content type
application/json
{
  • "contractActivatedFunction": {
    }
}

deactivateContractFunction

Authorizations:
public-api-project-api-keypublic-api-access-token
Request Body schema: application/json
required
contractId
required
number

Contract ID

formattedAbiFunction
required
string

Complete ABI function definition including parameter names and types. Use abitype's formatAbiItem() to generate this format from raw ABI.

Responses

Request samples

Content type
application/json
{
  • "contractId": 1,
  • "formattedAbiFunction": "function mint(address to, uint256 amount)"
}

Response samples

Content type
application/json
{
  • "message": "Contract function deactivated successfully"
}

getContractActivatedFunctions

Authorizations:
public-api-project-api-keypublic-api-access-token
Request Body schema: application/json
required
contractId
required
number

Contract ID

Responses

Request samples

Content type
application/json
{
  • "contractId": 1
}

Response samples

Content type
application/json
{
  • "contractActivatedFunctions": [
    ]
}

Transaction

executeTransaction

Authorizations:
public-api-project-api-keypublic-api-access-token
Request Body schema: application/json
required
contractActivatedFunctionId
required
number

Contract activated function ID

functionArgs
required
Array of strings

Function arguments

idempotencyKey
required
string

Idempotency key to prevent duplicate transactions

Responses

Request samples

Content type
application/json
{
  • "contractActivatedFunctionId": 1,
  • "functionArgs": [
    ],
  • "idempotencyKey": "unique-key-12345"
}

Response samples

Content type
application/json
{
  • "transaction": {
    }
}

getTransaction

Authorizations:
public-api-project-api-keypublic-api-access-token
query Parameters
transactionId
required
string
Example: transactionId=550e8400-e29b-41d4-a716-446655440000

Transaction ID

Responses

Response samples

Content type
application/json
{
  • "transaction": {
    }
}

getTransactions

Get transactions for a project. Results are ordered by createdAt in descending order (newest first).

Authorizations:
public-api-project-api-keypublic-api-access-token
query Parameters
page
number
Default: 1
Example: page=1

Page number

perPage
number
Default: 20
Example: perPage=20

Number of items per page

status
string
Enum: "created" "processing" "broadcasted" "succeeded" "broadcast-failed" "monitor-failed" "reverted"
Example: status=succeeded

Filter by transaction status

Responses

Response samples

Content type
application/json
{
  • "data": {
    },
  • "meta": {
    }
}