Inicio rápido
Envía tu primer registro de energía verificado a EnergyAS en minutos. Los contratos ya están desplegados en la testnet Polygon Amoy, así que no necesitas desplegar nada.
Requisitos previos
- Node.js 18+
- Una wallet con MATIC de la testnet Amoy; consíguelo en el faucet de Polygon Amoy
- Una API key de The Graph (gratis en thegraph.com/studio → API Keys)
1. Instala el SDK
Terminal
npm install energy-attestation-sdk2. Configura tu entorno
Crea un archivo .env con tus credenciales:
Environment
PRIVATE_KEY=0x...your_wallet_private_key
THEGRAPH_API_KEY=your_api_key_hereNota
Usa una wallet dedicada con solo el MATIC necesario para el gas. Nunca uses la clave privada de tu wallet principal en scripts.
3. Registra una organización
JavaScript
import 'dotenv/config';
import { EnergySDK } from 'energy-attestation-sdk';
const sdk = await EnergySDK.fromPrivateKey({
network: 'amoy',
privateKey: process.env.PRIVATE_KEY,
});
const { watcherId } = await sdk.watchers.createWatcher('My Energy Org');
console.log('Organization ID:', watcherId.toString());El SDK se conecta automáticamente a los contratos desplegados en Amoy, sin direcciones que configurar.
4. Crea un proyecto
JavaScript
import { EnergyType } from 'energy-attestation-sdk';
const { projectId } = await sdk.projects.createProject(
watcherId,
'Solar Farm Alpha',
EnergyType.SOLAR_PV,
);
console.log('Project ID:', projectId.toString());5. Autoriza tu wallet como emisora de registros
JavaScript
await sdk.attesters.addAttester(projectId, sdk.address);
// sdk.address is the wallet you initialized the SDK with6. Envía tu primera lectura
JavaScript
import { Interval } from 'energy-attestation-sdk';
const { uid } = await sdk.attestations.attest({
projectId: Number(projectId),
readings: [250_000n, 310_000n, 280_000n], // Wh per hour
readingIntervalMinutes: Interval.Hourly,
fromTimestamp: Math.floor(Date.now() / 1000) - 3 * 3600, // 3 hours ago
method: 'manual',
});
console.log('Record submitted! UID:', uid);7. Consulta tus datos
Espera cerca de un minuto a que el subgraph indexe la transacción y luego léela:
JavaScript
import { EnergyQuery } from 'energy-attestation-sdk';
const query = new EnergyQuery({
network: 'amoy',
apiKey: process.env.THEGRAPH_API_KEY,
});
const org = await query.getWatcher(watcherId.toString());
console.log('Total generated:', org.totalGeneratedWh, 'Wh');
const records = await query.getAttestations({
projectId: projectId.toString(),
replaced: false,
});
console.log('Records:', records.length);También puedes explorar tus datos en el Dashboard de EnergyAS seleccionando la red Amoy.
Próximos pasos
- Integración de extremo a extremo: tutorial completo con correcciones, periodos sin generación y separación de wallets de dispositivo
- Registrar una organización: gestión detallada de proyectos, metadatos y listas de atestadores
- Enviar registros de energía: envíos por lotes, correcciones y manejo de periodos sin generación
- Referencia del SDK: referencia completa de la API de
EnergyQueryyEnergySDK