Skip to content

Run tab Simulate returns 401 per-IP blocking on mainnet (wallet submit still works) #1654

Description

@WGB5445

Summary

On explorer.aptoslabs.com (mainnet), using the account Modules → Run tab, clicking Simulate fails with HTTP 401 from the Aptos fullnode simulate endpoint. Write / submit via a connected wallet (e.g. OneKey) can still succeed because it uses the wallet's own RPC, not Explorer's API client.

Covers FEAT-MODULES-001 (Run sub-tab).

Steps to reproduce

  1. Open https://explorer.aptoslabs.com (mainnet).
  2. Connect a wallet.
  3. Navigate to an account with Move modules, e.g. /account/<address>/modules/run/<module>/<function>.
  4. Fill entry function arguments and click Simulate.

Expected

Simulation returns success/failure from Move execution (gas, abort, etc.).

Actual

Simulation Failed
Request to [Fullnode]: POST https://api.mainnet.aptoslabs.com/v1/transactions/simulate failed with status: (code:401) and response body: "Unauthorized: Rejected due to a per-IP blocking rule for this application"

Technical notes

  • Simulate path: RunContractForm.handleSimulatesdkV2Client.transaction.simulate.simplePOST /v1/transactions/simulate with Explorer getApiKey() / Settings API key override (app/pages/Account/Tabs/ModulesTab/Contract.tsx, app/global-config/GlobalConfig.tsx, app/lib/constants.ts).
  • Write path: useSubmitTransaction → wallet signAndSubmitTransaction (does not use Explorer's Aptos API key).
  • Likely causes: invalid Settings → API Keys mainnet override, missing/invalid Authorization on the simulate request, or API Gateway per-IP policy for the application client ID—not a Move simulation logic error.

Environment

  • Network: mainnet
  • Site: production explorer.aptoslabs.com
  • Wallet submit: OK; Simulate only: fails with 401

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions