Librerías SDK 
TronZap proporciona librerías SDK oficiales para múltiples lenguajes de programación para ayudarte a integrar fácilmente con nuestra API. Estos SDK manejan la autenticación, las llamadas a la API y el manejo de errores, permitiéndote centrarte en construir tu aplicación.
SDK Disponibles 
Actualmente ofrecemos SDK para los siguientes lenguajes:
SDK de PHP 
bash
composer require tron-energy-market/tronzap-sdk-phpSDK de Node.js 
Este SDK está diseñado para funcionar en múltiples plataformas JavaScript/TypeScript:
- Node.js: v16.0.0 o superior
 - Bun: v1.0.0 o superior
 - Deno: v1.0.0 o superior
 
bash
npm install tronzap-sdk
# o
yarn add tronzap-sdk
# o
pnpm add tronzap-sdkSDK de Python 
bash
pip install tronzap-sdkUso Básico 
Todos los SDK proporcionan una interfaz similar para interactuar con la API de TronZap. Aquí hay algunos ejemplos básicos:
php
<?php
use TronZap\Client;
use TronZap\Exception\TronZapException;
// Inicializar el cliente
$apiToken = 'tu_api_token';
$apiSecret = 'tu_api_secret';
$client = new Client($apiToken, $apiSecret);
try {
    // Obtener servicios disponibles
    $services = $client->getServices();
    // Crear una transacción de energía
    $transaction = $client->createEnergyTransaction(
        'DIRECCIÓN_TRX', // Dirección de la billetera TRON
        65000,           // Cantidad de energía
        1,               // Duración (horas)
        'mi-tx-id',      // ID externo (opcional)
        false            // No activar dirección (opcional)
    );
    // Verificar el estado de la transacción
    $status = $client->checkTransaction($transaction['result']['transaction_id']);
} catch (TronZapException $e) {
    echo "Error: " . $e->getMessage() . " (Código: " . $e->getCode() . ")\n";
}javascript
import { TronZapClient, TronZapError } from 'tronzap-sdk';
// Inicializar el cliente
const client = new TronZapClient({
  apiToken: 'your_api_token',
  apiSecret: 'your_api_secret'
});
async function main() {
  try {
    // Obtener servicios disponibles
    const services = await client.getServices();
    console.log(services);
    // Crear una transacción de energía
    const transaction = await client.createEnergyTransaction(
      'DIRECCIÓN_TRX', // Dirección de la billetera TRON
      65000,           // Cantidad de energía
      1,               // Duración (horas)
      'mi-tx-id',      // ID externo (opcional)
      true            // No activar dirección (opcional)
    );
    console.log(transaction);
    // Verificar el estado de la transacción
    const status = await client.checkTransaction(transaction.result.transaction_id);
    console.log(status);
  } catch (error) {
    if (error instanceof TronZapError) {
      console.error(`TronZap API Error: ${error.message} (Code: ${error.code})`);
    } else {
      // Type check the error before accessing its properties
      if (error instanceof Error) {
        console.error(`General error: ${error.message}`);
      } else {
        console.error('An unknown error occurred:', error);
      }
    }
  }
}
main();python
from tronzap_sdk import TronZapClient, TronZapError
# Inicializar el cliente
api_token = 'tu_api_token'
api_secret = 'tu_api_secret'
client = TronZapClient(api_token, api_secret)
try:
    # Obtener servicios disponibles
    services = client.get_services()
    # Crear una transacción de energía
    transaction = client.create_energy_transaction(
        address='DIRECCIÓN_TRX',  # Dirección de la billetera TRON
        energy_amount=65000,      # Cantidad de energía
        duration=1,               # Duración (horas)
        external_id='mi-tx-id',   # ID externo (opcional)
        activate_address=False    # No activar dirección (opcional)
    )
    # Verificar el estado de la transacción
    status = client.check_transaction(transaction['result']['transaction_id'])
except TronZapError as e:
    print(f"Error: {e.message} (Código: {e.code})")Características 
Todos nuestros SDK proporcionan las siguientes características:
- Autenticación: Generación automática de firmas API para peticiones seguras
 - Información de Servicios: Obtener servicios disponibles y precios
 - Transacciones de Energía: Crear transacciones para compra de energía
 - Activación de Dirección: Crear transacciones para activación de dirección
 - Estado de Transacción: Comprobar el estado de tus transacciones
 - Gestión de Cuenta: Obtener información del saldo de la cuenta y uso
 
Documentación 
Para la documentación completa de cada SDK, por favor consulta sus respectivos repositorios de GitHub.
