Account Endpoints

Changed

  • /api/account/state (POST) -> /api/{chainId}/account/{accountId}/state (GET)

    • Moved chainId from body to URL path
    • Moved accountId from body to URL path
    • Query params remain unchanged (include=native,tokens,staking)
  • /api/account/state/tokens (POST) -> /api/{chainId}/account/{accountId}/tokens (GET)

    • Moved chainId from body to URL path
    • Moved accountId from body to URL path
    • Pagination via nextPage query param remains unchanged
  • /api/account/history (POST) -> /api/{chainId}/account/{accountId}/history (GET)

    • Moved chainId from body to URL path
    • Moved accountId from body to URL path
    • Query params remain unchanged (include=parsed,raw)
    • Pagination via nextPage query param remains unchanged

Transaction Endpoints

Changed

  • /api/transaction/broadcast (POST) -> /api/{chainId}/transaction/broadcast (POST)

    • Moved chainId from body to URL path
    • Payload structure remains unchanged
  • /api/transaction/encode (POST) -> /api/{chainId}/transaction/encode (POST)

    • Moved chainId from body to URL path
    • Transaction details remain in request body
  • /api/transaction/{hash} (GET) -> /api/{chainId}/transaction/{hash} (GET)

    • Added chainId to URL path
    • Response structure remains unchanged

Validator Endpoints

Changed

  • /api/validators (GET) -> /api/{chainId}/validators (GET)

    • Moved chainId from query param to URL path
    • Pagination via nextPage query param remains unchanged

Chain Information

Unchanged

  • /api/chains (GET)
    • Lists all supported chains and their features
    • No changes to endpoint or response structure

Utils Endpoints

Changed

  • /api/address/validate (POST) -> /api/{chainId}/address/validate (POST)

    • Moved chainId from body to URL path
    • Response type remains boolean
  • /api/address/encode (POST) -> /api/{chainId}/address/encode (POST)

    • Moved chainId from body to URL path
    • Pubkey remains in request body

OpenAPI Specification

The OpenAPI specification is available at: https://api.adamik.io/openapi.json

General Changes

  1. HTTP Method Changes:

    • Most POST endpoints converted to GET where they were only used for reading data
    • POST methods retained only for actual data modifications/submissions
  2. URL Structure:

    • Consistent pattern: /api/{chainId}/...
    • Resource identifiers moved to URL paths
    • Query parameters used only for filtering and pagination
  3. Pagination:

    • Consistent nextPage token approach across all paginated endpoints
    • Token passed via query parameter
  4. Response Formats:

    • Added more detailed error and warning messages in status object
    • Consistent structure across all endpoints