API de producción
Guía rápida
Crea una credencial de API, firma una petición y envía tu primer pedido de Energy en producción.
En esta página
Este es el camino más corto entre una integración vacía y un pedido creado.
1. Crea una credencial
Abre Panel → API, elige Crear una clave de API y guarda los dos valores:
api_key, el identificador público de la credencial;api_secret, el secreto que se muestra una sola vez.
Guarda el secreto en tu servidor, por ejemplo en RENTRON_API_SECRET. No lo expongas nunca en un navegador, una app móvil, una URL ni un registro.
2. Comprueba la hora del servidor
curl https://api.rentron.xyz/v1/time
{"unix_time":1784376000}
La marca de tiempo de una petición firmada debe estar dentro de los cinco minutos de la hora del servidor.
3. Consulta las opciones del pedido
Firma GET /v1/energy/options. Devuelve el tamaño de la porción, las duraciones permitidas y si se están aceptando pedidos.
{"energy_per_portion":65000,"max_energy":1300000,"duration_minutes":[15,60,240,1440],"intake_enabled":true}
4. Crea un pedido
Serializa el JSON una sola vez y firma exactamente los bytes que envías.
{"client_request_id":"order-1042","address":"TJRabPrwbZy45sbavfcjinPJC18kjpRTv8","energy":65000,"duration_minutes":60,"expected_total_trx":"3.200000"}
POST /v1/energy/orders HTTP/1.1
Host: api.rentron.xyz
Content-Type: application/json
Authorization: HMAC-SHA256 {api_key}:{base64_signature}
X-Request-Timestamp: 1784376000
Un pedido nuevo devuelve 201 Created, el JSON del pedido y Location: /v1/energy/orders/{id}. Una repetición idéntica devuelve el pedido existente con 200 OK.
Usa el total_trx exacto de la última cotización. Si recibes energy_price_changed, pide una cotización nueva y envíalo otra vez; no se creó ningún pedido ni se retuvo nada.
5. Envía en cuanto la Energy se pueda gastar
Consulta Location al cabo de 1, 2 y 5 segundos, y después cada 10 segundos. Envía tu propia transacción en cuanto energy_usable sea true:
{"status":"available","delivery_final":false,"energy_usable":true,"rental_expires_at":1784379612}
available significa que la Energy ya está asignada a la dirección y se puede gastar, y que el tiempo que has pagado corre hasta rental_expires_at. Alrededor de un minuto después, una verificación independiente confirma la entrega y el estado pasa a delivered. Decide con energy_usable, no con delivered: esperar a esa verificación consume alquiler que ya has pagado.
6. Espera a que termine
Si registras el ciclo completo del alquiler, sigue consultando. Para solo cuando los dos valores sean true:
{"lifecycle_final":true,"delivery_final":true}
Siguiente: consultar un pedido, consulta periódica y reintentos y errores de la API.
Rentron