IOTA Move Utils API

Move smart contract introspection: modules, functions, structs

Operations 5

POST /iota_getMoveFunctionArgTypes iota_getMoveFunctionArgTypes #
POST /iota_getNormalizedMoveFunction iota_getNormalizedMoveFunction #
POST /iota_getNormalizedMoveModule iota_getNormalizedMoveModule #
POST /iota_getNormalizedMoveModulesByPackage iota_getNormalizedMoveModulesByPackage #
POST /iota_getNormalizedMoveStruct iota_getNormalizedMoveStruct #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/iota-move-utils-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

iota-move-utils-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: IOTA JSON-RPC Move Utils API
  description: IOTA JSON-RPC API for interaction with IOTA full node or indexer. All requests are HTTP POST to the node endpoint. Covers iota_ (Read, Write, Move Utils), iotax_ (Extended, Coin Query, Governance), and unsafe_ (Transaction Builder) method namespaces.
  version: 1.26.0-alpha
  contact:
    name: IOTA Foundation
    email: info@iota.org
    url: https://docs.iota.org/
  license:
    name: Apache-2.0
    url: https://opensource.org/licenses/Apache-2.0
  x-openrpc-source: https://raw.githubusercontent.com/iotaledger/iota/develop/crates/iota-open-rpc/spec/openrpc.json
servers:
- url: https://api.mainnet.iota.cafe
  description: IOTA Mainnet full node
- url: https://api.testnet.iota.cafe
  description: IOTA Testnet full node
- url: https://api.devnet.iota.cafe
  description: IOTA Devnet full node
- url: https://indexer.mainnet.iota.cafe
  description: IOTA Mainnet indexer (iotax_ methods)
- url: https://indexer.testnet.iota.cafe
  description: IOTA Testnet indexer (iotax_ methods)
tags:
- name: Move Utils
  description: 'Move smart contract introspection: modules, functions, structs'
paths:
  /iota_getMoveFunctionArgTypes:
    post:
      operationId: iota_getMoveFunctionArgTypes
      summary: iota_getMoveFunctionArgTypes
      description: Return the argument types of a Move function, based on normalized Type.
      tags:
      - Move Utils
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  description: JSON-RPC protocol version
                id:
                  oneOf:
                  - type: integer
                  - type: string
                  description: Request identifier
                method:
                  type: string
                  enum:
                  - iota_getMoveFunctionArgTypes
                  description: The JSON-RPC method name
                params:
                  type: array
                  description: Method parameters
                  items: {}
            example:
              jsonrpc: '2.0'
              id: 1
              method: iota_getMoveFunctionArgTypes
              params: []
      responses:
        '200':
          description: Successful JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    example: '2.0'
                  id:
                    oneOf:
                    - type: integer
                    - type: string
                  result:
                    type: array
                    items:
                      $ref: '#/components/schemas/MoveFunctionArgType'
        default:
          description: JSON-RPC error response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    oneOf:
                    - type: integer
                    - type: string
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /iota_getNormalizedMoveFunction:
    post:
      operationId: iota_getNormalizedMoveFunction
      summary: iota_getNormalizedMoveFunction
      description: Return a structured representation of Move function
      tags:
      - Move Utils
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  description: JSON-RPC protocol version
                id:
                  oneOf:
                  - type: integer
                  - type: string
                  description: Request identifier
                method:
                  type: string
                  enum:
                  - iota_getNormalizedMoveFunction
                  description: The JSON-RPC method name
                params:
                  type: array
                  description: Method parameters
                  items: {}
            example:
              jsonrpc: '2.0'
              id: 1
              method: iota_getNormalizedMoveFunction
              params: []
      responses:
        '200':
          description: Successful JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    example: '2.0'
                  id:
                    oneOf:
                    - type: integer
                    - type: string
                  result:
                    $ref: '#/components/schemas/IotaMoveNormalizedFunction'
        default:
          description: JSON-RPC error response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    oneOf:
                    - type: integer
                    - type: string
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /iota_getNormalizedMoveModule:
    post:
      operationId: iota_getNormalizedMoveModule
      summary: iota_getNormalizedMoveModule
      description: Return a structured representation of Move module
      tags:
      - Move Utils
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  description: JSON-RPC protocol version
                id:
                  oneOf:
                  - type: integer
                  - type: string
                  description: Request identifier
                method:
                  type: string
                  enum:
                  - iota_getNormalizedMoveModule
                  description: The JSON-RPC method name
                params:
                  type: array
                  description: Method parameters
                  items: {}
            example:
              jsonrpc: '2.0'
              id: 1
              method: iota_getNormalizedMoveModule
              params: []
      responses:
        '200':
          description: Successful JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    example: '2.0'
                  id:
                    oneOf:
                    - type: integer
                    - type: string
                  result:
                    $ref: '#/components/schemas/IotaMoveNormalizedModule'
        default:
          description: JSON-RPC error response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    oneOf:
                    - type: integer
                    - type: string
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /iota_getNormalizedMoveModulesByPackage:
    post:
      operationId: iota_getNormalizedMoveModulesByPackage
      summary: iota_getNormalizedMoveModulesByPackage
      description: Return structured representations of all modules in the given package
      tags:
      - Move Utils
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  description: JSON-RPC protocol version
                id:
                  oneOf:
                  - type: integer
                  - type: string
                  description: Request identifier
                method:
                  type: string
                  enum:
                  - iota_getNormalizedMoveModulesByPackage
                  description: The JSON-RPC method name
                params:
                  type: array
                  description: Method parameters
                  items: {}
            example:
              jsonrpc: '2.0'
              id: 1
              method: iota_getNormalizedMoveModulesByPackage
              params: []
      responses:
        '200':
          description: Successful JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    example: '2.0'
                  id:
                    oneOf:
                    - type: integer
                    - type: string
                  result:
                    type: object
                    additionalProperties:
                      $ref: '#/components/schemas/IotaMoveNormalizedModule'
        default:
          description: JSON-RPC error response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    oneOf:
                    - type: integer
                    - type: string
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
  /iota_getNormalizedMoveStruct:
    post:
      operationId: iota_getNormalizedMoveStruct
      summary: iota_getNormalizedMoveStruct
      description: Return a structured representation of Move struct
      tags:
      - Move Utils
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              required:
              - jsonrpc
              - id
              - method
              properties:
                jsonrpc:
                  type: string
                  enum:
                  - '2.0'
                  description: JSON-RPC protocol version
                id:
                  oneOf:
                  - type: integer
                  - type: string
                  description: Request identifier
                method:
                  type: string
                  enum:
                  - iota_getNormalizedMoveStruct
                  description: The JSON-RPC method name
                params:
                  type: array
                  description: Method parameters
                  items: {}
            example:
              jsonrpc: '2.0'
              id: 1
              method: iota_getNormalizedMoveStruct
              params: []
      responses:
        '200':
          description: Successful JSON-RPC response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                    example: '2.0'
                  id:
                    oneOf:
                    - type: integer
                    - type: string
                  result:
                    $ref: '#/components/schemas/IotaMoveNormalizedStruct'
        default:
          description: JSON-RPC error response
          content:
            application/json:
              schema:
                type: object
                properties:
                  jsonrpc:
                    type: string
                  id:
                    oneOf:
                    - type: integer
                    - type: string
                  error:
                    type: object
                    properties:
                      code:
                        type: integer
                      message:
                        type: string
                      data: {}
externalDocs:
  description: IOTA API Reference
  url: https://docs.iota.org/iota-api-ref