API Documentation

Complete reference for the ArthumX REST API. Integrate with our platform services using these documented endpoints.

Getting Started with the API

The ArthumX API provides access to blockchain services, wallet management, and DeFi functionality. All API requests require authentication via JWT tokens or API keys.

Base URL for all API requests: https://api.arthumx.io/v1

Authentication

You can authenticate API requests using either:

  • JWT Token - For user-specific operations (recommended for frontend applications)
  • API Key - For server-to-server operations (recommended for backend integrations)

JWT Authentication Example

GET /user/profile
Authorization: Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...

API Key Authentication Example

GET /blockchain/status
X-API-Key: your_api_key_here

Authentication Endpoints

POST /auth/login

Authenticate a user and get JWT token

Request Body
{
  "username": "string",
  "password": "string"
}
Response (200 OK)
{
  "token": "string",
  "refresh_token": "string",
  "user_id": "integer",
  "expires_at": "timestamp"
}

POST /auth/register

Register a new user account

Request Body
{
  "username": "string",
  "email": "string",
  "password": "string",
  "confirm_password": "string"
}
Response (201 Created)
{
  "user_id": "integer",
  "username": "string",
  "email": "string",
  "created_at": "timestamp"
}

POST /auth/refresh

Refresh JWT token using refresh token

Request Body
{
  "refresh_token": "string"
}
Response (200 OK)
{
  "token": "string",
  "refresh_token": "string",
  "expires_at": "timestamp"
}

Wallet Management Endpoints

GET /wallet/list

Get list of user wallets

Response (200 OK)
{
  "wallets": [
    {
      "wallet_id": "string",
      "address": "string",
      "type": "string",
      "balance": "number",
      "is_hardware": "boolean",
      "hardware_type": "string",
      "created_at": "timestamp"
    }
  ]
}

POST /wallet/create

Create a new wallet

Request Body
{
  "name": "string",
  "password": "string"
}
Response (201 Created)
{
  "wallet_id": "string",
  "address": "string",
  "mnemonic": "string",
  "private_key": "string",
  "warning": "Store this information securely - it is only shown once"
}

GET /wallet/{address}/balance

Get wallet balances for all tokens

Path Parameters
  • address - Wallet address
Response (200 OK)
{
  "address": "string",
  "balances": [
    {
      "token": "string",
      "symbol": "string",
      "balance": "number",
      "value_usd": "number"
    }
  ],
  "total_value_usd": "number"
}

Blockchain Endpoints

For full endpoint documentation, please refer to the complete Swagger/OpenAPI specification.

API Documentation Resources

OpenAPI Specification

Download the complete OpenAPI (Swagger) specification file.

Download JSON Download YAML
SDK Libraries

Client libraries for easy integration with our API.

JavaScript Python Java
API Explorer

Interactive API documentation with live request testing.

Open Swagger UI