Skip to contents

Configures the JSON-RPC endpoint used by all nearjsonrpc functions.

Supports:

  • Shortcuts: "mainnet", "testnet", "betanet"

  • Any custom URL (archival nodes, Pagoda, QuickNode, Lava, etc.)

  • No argument → prints and returns current endpoint

The endpoint is stored in options("nearjsonrpc.endpoint") and defaults to testnet.

Usage

near_set_endpoint(endpoint = NULL)

Arguments

endpoint

Character scalar. Use:

  • "mainnet"https://rpc.mainnet.near.org

  • "testnet"https://rpc.testnet.near.org (default)

  • "betanet"https://rpc.betanet.near.org

  • Any full URL like "https://archival-rpc.mainnet.near.org"

If NULL (or omitted), returns the current endpoint.

Value

Invisibly returns the active endpoint. Useful for piping.

Examples

# 1. Use shortcuts
near_set_endpoint("mainnet")
#>  NEAR RPC endpoint set to <https://rpc.mainnet.near.org>
near_set_endpoint("testnet")     # default
#>  NEAR RPC endpoint set to <https://rpc.testnet.near.org>
near_set_endpoint("betanet")
#>  NEAR RPC endpoint set to <https://rpc.betanet.near.org>

# 2. Custom / archival / third-party nodes
near_set_endpoint("https://archival-rpc.mainnet.near.org")
#>  NEAR RPC endpoint set to <https://archival-rpc.mainnet.near.org>
near_set_endpoint("https://rpc.mainnet.pagoda.co")
#>  NEAR RPC endpoint set to <https://rpc.mainnet.pagoda.co>
near_set_endpoint("https://near.lava.build")  # Lava Network
#>  NEAR RPC endpoint set to <https://near.lava.build>

# 3. Just view current endpoint (no change)
near_set_endpoint()
#>  Current NEAR endpoint: <https://near.lava.build>
getOption("nearjsonrpc.endpoint")
#> [1] "https://near.lava.build"

# 4. Chain with other functions
near_set_endpoint("mainnet") |>
  near_query_account("near.near")
#>  NEAR RPC endpoint set to <https://rpc.mainnet.near.org>
#> Error in httr2::req_perform(.): HTTP 400 Bad Request.

# 5. Use in scripts with error handling
tryCatch({
  near_set_endpoint("invalid-url")
}, error = function(e) message("Bad URL! ", e$message))
#> Bad URL! Invalid endpoint — must start with http:// or https://
#>   You provided: {.val {endpoint}}