Endpoints de API

Todos los endpoints de API disponibles

URL Base

Producción: https://api.usdtlowfee.com

Convenciones Generales

Unidades

  • • sun: 1 TRX = 1,000,000 sun (todos los campos de cantidad usan sun)
  • • energyValue: unidad de energía (número int64)
  • • durationHours: horas (número int)

Tipos de Datos

  • • Campos ID: número int64 (ID snowflake)
  • • Campos de cantidad: número int64 (sufijo *Sun, por ejemplo, balanceSun, priceSun)
  • • Campos de tiempo: string (formato ISO8601 UTC, por ejemplo, "2025-01-15T10:30:00Z")
  • • Campos booleanos: true/false

Formato de Respuesta

  • • Éxito: { "data": {...}, "meta": {...} } (meta opcional)
  • • Error: { "error": { "code": "...", "message": "..." } }

Gestión de Cuenta

Consultar saldo de billetera e información de usuario

GET /v1/wallet/balance

Obtener Saldo

Obtener saldo actual de billetera

Ejemplo de respuesta:

{
  "data": {
    "balanceSun": 1000000,
    "frozenSun": 0,
    "totalSun": 1000000
  }
}
GET /v1/users/me

Información de Usuario

Obtener información básica del usuario actual

Ejemplo de respuesta:

{
  "data": {
    "id": 123456,
    "email": "user@example.com",
    "emailVerified": true,
    "createdAt": "2025-01-01T00:00:00Z"
  }
}

Gestión de Pedidos

Crear y consultar pedidos de energía

POST /v1/energy/orders

Crear Pedido

Crear pedido de alquiler de energía para una dirección específica (actualmente solo admite tipo manual)

Parámetros de solicitud:

Parámetro Tipo Requerido Descripción
type string Tipo de pedido, actualmente solo admite "manual"
data.tronAddress string Dirección TRON para recibir energía (34 caracteres, comienza con T)
data.energyValue int64 Cantidad de energía (número, mínimo 32000, recomendado 65000 para transferencias USDT)
data.durationHours int Duración del alquiler (horas, valores válidos: 1, 24, 72, 168, 336, 720)

Ejemplo de solicitud:

{
  "type": "manual",
  "data": {
    "tronAddress": "TYour1Address2Here3...",
    "energyValue": 65000,
    "durationHours": 1
  }
}

Ejemplo de respuesta:

{
  "data": {
    "id": 1234567890,
    "userId": 9876543210,
    "tronAddress": "TYour1Address2Here3...",
    "energyValue": 65000,
    "durationHours": 1,
    "priceSun": 3000000,
    "priceTrx": 3.0,
    "orderType": "manual",
    "status": "processing",
    "createdAt": "2025-01-15T10:30:00Z",
    "updatedAt": "2025-01-15T10:30:00Z",
    "statusUpdatedAt": "2025-01-15T10:30:00Z",
    "canTransitionTo": ["completed", "failed"]
  }
}
GET /v1/energy/orders/:id

Obtener Pedido

Consultar detalles del pedido por ID de pedido

Ejemplo de respuesta:

{
  "data": {
    "id": 1234567890,
    "userId": 9876543210,
    "tronAddress": "TYour1Address2Here3...",
    "energyValue": 65000,
    "durationHours": 1,
    "priceSun": 3000000,
    "priceTrx": 3.0,
    "orderType": "manual",
    "status": "completed",
    "txid": "abc123...",
    "createdAt": "2025-01-15T10:30:00Z",
    "completedAt": "2025-01-15T10:30:05Z",
    "updatedAt": "2025-01-15T10:30:05Z",
    "statusUpdatedAt": "2025-01-15T10:30:05Z",
    "canTransitionTo": []
  }
}
GET /v1/energy/orders

Listar Pedidos

Consultar lista de pedidos (admite paginación y filtrado)

Parámetros de solicitud:

Parámetro Tipo Requerido Descripción
offset number No Desplazamiento, predeterminado 0
limit number No Elementos por página, predeterminado 20, máximo 100
status string No Filtrar por estado del pedido: processing, completed, failed

Ejemplo de respuesta:

{
  "data": {
    "orders": [
      {
        "id": 1234567890,
        "userId": 9876543210,
        "tronAddress": "TYour1...",
        "energyValue": 65000,
        "durationHours": 1,
        "priceSun": 3000000,
        "priceTrx": 3.0,
        "orderType": "manual",
        "status": "completed",
        "createdAt": "2025-01-15T10:30:00Z",
        "updatedAt": "2025-01-15T10:30:05Z",
        "statusUpdatedAt": "2025-01-15T10:30:05Z",
        "canTransitionTo": []
      }
    ],
    "total": 100,
    "offset": 0,
    "limit": 20
  }
}

Gestión de Direcciones

Gestionar direcciones de recepción usadas frecuentemente

POST /v1/addresses

Agregar Dirección

Guardar una nueva dirección

Ejemplo de solicitud:

{
  "tronAddress": "TYour1Address2Here3...",
  "label": "Billetera Principal",
  "isDefault": false
}

Ejemplo de respuesta:

{
  "data": {
    "id": 1,
    "tronAddress": "TYour1Address2Here3...",
    "label": "Billetera Principal",
    "isDefault": false,
    "usageCount": 0,
    "createdAt": "2025-01-01T00:00:00Z"
  }
}
GET /v1/addresses

Listar Direcciones

Obtener lista de direcciones guardadas

Ejemplo de respuesta:

{
  "data": {
    "addresses": [
      {
        "id": 1,
        "tronAddress": "TYour1Address2Here3...",
        "label": "Billetera Principal",
        "isDefault": true,
        "usageCount": 5,
        "lastUsedAt": "2025-01-15T10:30:00Z",
        "createdAt": "2025-01-01T00:00:00Z"
      }
    ],
    "total": 1
  }
}
GET /v1/addresses/:id

Obtener Detalles de Dirección

Consultar información de una sola dirección

Ejemplo de respuesta:

{
  "data": {
    "id": 1,
    "tronAddress": "TYour1Address2Here3...",
    "label": "Billetera Principal",
    "isDefault": true,
    "usageCount": 5,
    "lastUsedAt": "2025-01-15T10:30:00Z",
    "createdAt": "2025-01-01T00:00:00Z"
  }
}
PUT /v1/addresses/:id/label

Actualizar Etiqueta de Dirección

Modificar la etiqueta de una dirección

Ejemplo de solicitud:

{
  "label": "Nueva Etiqueta"
}

Ejemplo de respuesta:

{
  "data": {
    "id": 1,
    "tronAddress": "TYour1Address2Here3...",
    "label": "Nueva Etiqueta",
    "isDefault": false,
    "usageCount": 3,
    "lastUsedAt": "2025-01-15T10:30:00Z",
    "createdAt": "2025-01-01T00:00:00Z"
  }
}
PUT /v1/addresses/:id/default

Establecer Dirección Predeterminada

Establecer dirección específica como dirección de recepción predeterminada

Ejemplo de respuesta:

// HTTP 204 No Content
// Sin cuerpo de respuesta

Devuelve código de estado 204 sin contenido en caso de éxito.
DELETE /v1/addresses/:id

Eliminar Dirección

Eliminar una dirección guardada