Skip to content
Translated page. The English version is the source of truth.

Activator — ativação de endereço ​

Ative um endereço TRON que nunca foi usado on-chain. Um endereço totalmente novo não possui registro de conta, portanto não pode receber energy ou bandwidth delegadas até ser ativado. Este endpoint cria a conta para você e retorna o hash da transação de ativação.

A ativação é uma operação de execução única por endereço. Se o endereço já estiver ativo, o endpoint informa isso a você e não cobra nada.

URL base do endpoint ​

https://netts.io/apiv2/activator

Cabeçalhos da requisição ​

HeaderRequiredDescription
Content-TypeSimapplication/json
X-API-KEYSimSua chave de API do painel da Netts

Seu user_id é derivado da chave de API — você nunca o envia.


Ativar — POST /apiv2/activator ​

Corpo da requisição ​

json
{ "targetAddress": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE" }
CampoTipoObrigatórioDescrição
targetAddressstringSimEndereço TRON a ser ativado. Deve corresponder a ^T[A-Za-z0-9]{33}$ (34 caracteres, começa com T).

Response — ativado (200, code 10000) ​

json
{
    "detail": {
        "code": 10000,
        "msg": "Address activated successfully, 1.1 TRX deducted",
        "data": {
            "orderId": "A123456",
            "targetAddress": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE",
            "activation_cost": 1.1,
            "user_balance_before": 500.00,
            "user_balance_after": 498.90,
            "hash": "0000000000000000000000000000000000000000000000000000000000000000"
        }
    }
}
CampoTipoDescrição
orderIdstringNúmero do pedido de ativação, sempre A + dígitos. Use-o para conciliação.
targetAddressstringO endereço que foi ativado
activation_costfloatValor debitado do seu saldo, em TRX
user_balance_beforefloatSaldo antes do débito
user_balance_afterfloatSaldo após o débito
hashstringHash da transação de ativação. Verifique-o em qualquer explorador TRON.

Response — já ativo (200, code 2001) ​

Retornado quando o endereço já existe on-chain. Nada é cobrado.

json
{
    "detail": {
        "code": 2001,
        "msg": "Address is already activated",
        "data": {
            "targetAddress": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE",
            "status": "already_activated",
            "user_balance": 500.00,
            "activation_cost": 0,
            "activation_required": false
        }
    }
}

Verifique o code antes de assumir que ocorreu uma cobrança: 10000 significa que você pagou, 2001 significa que não pagou.

Exemplos ​

bash
curl -X POST https://netts.io/apiv2/activator \
  -H "Content-Type: application/json" \
  -H "X-API-KEY: your_api_key" \
  -d '{"targetAddress": "TQn9Y2khEsLJW1ChVWFMSMeRDow5KcbLSE"}'

Preço ​

ItemValor
Ativação1.1 TRX
Endereço já ativo0

O valor é fixo e não depende do endereço ou das condições da rede. Ele é debitado do seu saldo da Netts no momento em que a ativação tem sucesso — nunca antes. Uma ativação com falha não custa nada.

Seu saldo deve cobrir o custo, caso contrário a solicitação é rejeitada com 403 (1004) e nenhum pedido é criado.


Quando você precisa disso ​

  • Antes de alugar energy ou bandwidth para um endereço novo. A delegação para uma conta inexistente falha. Ative primeiro, depois faça o pedido.
  • Antes da primeira transferência recebida para um endereço gerado por você mesmo.

Você não precisa chamar este endpoint para um endereço que já recebeu TRX ou um token alguma vez — ele já está ativo, e a chamada simplesmente retornará 2001.

Pedindo energy para um novo endereço

O endpoint de energy de 1 hora ativa um destinatário não ativo por conta própria como parte do pedido, e o custo de ativação é adicionado a esse pedido. Chame o ativador explicitamente quando desejar o endereço ativo antes de qualquer aluguel — por exemplo, para recarregar bandwidth primeiro, o que exige uma conta ativa.


Tempo de processamento ​

A ativação é uma transação on-chain real. O endpoint responde após sua transmissão e gravação do registro de ativação, normalmente dentro de alguns segundos.

O endereço se torna utilizável somente assim que a transação for incluída em um bloco — até ~3 segundos após a resposta, já que esse é o intervalo de bloco da TRON. Se a sua próxima etapa depender de o endereço estar ativo (pedir bandwidth, por exemplo), confirme o estado on-chain pelo hash retornado em vez de fazer a chamada imediatamente.


Respostas de erro ​

CódigoDescriçãoStatus HTTP
10000Endereço ativado, saldo debitado200
2001Endereço já ativado, nada cobrado200
-1Chave de API inválida / IP fora da whitelist401
1004Saldo insuficiente — a mensagem informa o que é necessário e o que você possui403
-Formato de targetAddress inválido (deve ter 34 caracteres, começar com T)422
5003Falha na ativação ou serviço temporariamente indisponível — tente novamente mais tarde503
5000Erro interno do servidor500

Um 503 significa que nenhuma cobrança ocorreu e nenhum endereço foi ativado: a solicitação pode ser repetida com segurança.

Limites de taxa ​

Limitado por IP de origem:

PeríodoLimite
1 segundo5 requisições
1 minuto60 requisições

Limite de taxa excedido (429) ​

json
{ "message": "API rate limit exceeded" }

Contas Pós-pagas ​

Contas no faturamento pós-pago usam o mesmo endpoint, headers e corpo da solicitação. A diferença está em como a ativação é paga:

  • Nada é debitado do seu depósito. Cada ativação bem-sucedida é adicionada ao saldo devedor da sua conta na moeda de liquidação acordada em seu contrato. Você efetua o pagamento por fatura, de acordo com o seu contrato.
  • Sua conta possui um limite de crédito. Enquanto o valor devedor estiver dentro do limite, as ativações são aceitas mesmo com saldo de depósito zero.
  • Apenas ativações concluídas são faturadas. Um endereço que já está ativo (2001) e uma ativação que falhou não custam nada.

O faturamento pós-pago é ativado pela Netts para uma conta mediante solicitação. Cada resposta informa como a ativação é paga: paymentMode é postpaid ou prepaid.

Campos de requisição adicionais ​

CampoTipoObrigatórioDescrição
testbooleanNãotrue — calcula o preço e apenas verifica o endereço. Nada é ativado ou faturado
freezePricebooleanNãotrue — congela o preço do seu contrato por 60 segundos. Nada é ativado ou faturado
quoteIdstringNãoAtiva com o preço de uma cotação emitida por freezePrice para o mesmo endereço
priceCurrencystringNãoTRX (padrão) ou a moeda do seu contrato, como em settlement.asset. Para contas pós-pagas, os valores na moeda do seu contrato são sempre incluídos

quoteId não pode ser combinado com test ou freezePrice. Qualquer outro campo no corpo da requisição será rejeitado.

Consulta de preço (test: true) ​

json
{ "targetAddress": "TSMARToKjQGxroMnPKK6o6d4876VkQmHEH", "test": true }
json
{
    "detail": {
        "code": 10010,
        "msg": "Test calculation",
        "data": {
            "amount": 1,
            "unitPriceSun": null,
            "discount": null,
            "energyTRX": "0.000000",
            "activationTRX": "1.100000",
            "wouldCostTRX": "1.100000",
            "paidTRX": 0,
            "paymentMode": "postpaid",
            "activationCheck": "inactive",
            "alt": {"USDC": {"energy": "0.000000", "activation": "0.364333", "total": "0.364333"}},
            "fxAt": "2026-10-19T07:17:33.475335+00:00",
            "targetAddress": "TSMARToKjQGxroMnPKK6o6d4876VkQmHEH"
        }
    }
}

activationCheck: inactive — o endereço precisa de ativação e será faturado; active — o endereço já está ativo, wouldCostTRX é 0; unknown — não foi possível verificar no momento.

alt.<currency> — os mesmos valores na moeda do seu contrato. fxAt — o horário da taxa de câmbio utilizada.

Cotação com preço fixo (freezePrice: true) ​

  1. Envie a requisição com "freezePrice": true. A resposta conterá o código 10011 (Quote issued), os mesmos campos de uma consulta de preço, além de quoteId e expiresAt.
  2. Dentro de 60 segundos, envie a requisição com "quoteId": "<quoteId>" e o mesmo targetAddress.
  3. A ativação será faturada pelo preço cotado — o preço sob o seu contrato no momento da cotação.

Uma cotação pode ser usada uma única vez. Uma cotação expirada ou já utilizada será rejeitada e nada será ativado.

Ativação bem-sucedida ​

json
{
    "detail": {
        "code": 10000,
        "msg": "Address activated successfully, 1.1 TRX service cost, postpaid",
        "data": {
            "orderId": "A564125",
            "targetAddress": "TSMARToKjQGxroMnPKK6o6d4876VkQmHEH",
            "activation_cost": 1.1,
            "user_balance_before": 0.0,
            "user_balance_after": 0.0,
            "hash": "bd9ea6ef92ce4ba6553af3930a03abe874cdfcc2399b7fdd9abdb11570de2920",
            "paymentMode": "postpaid",
            "activationTRX": "1.100000",
            "totalTRX": "1.100000"
        }
    }
}
CampoDescrição
activation_costCusto da ativação em TRX. Para contas pós-pagas, ele não é deduzido do depósito
user_balance_before / user_balance_afterSeu saldo de depósito — inalterado para contas pós-pagas
paymentModepostpaid
activationTRX / totalTRXValores exatos, com 6 casas decimais
quoteId, altPresentes quando a ativação foi solicitada com uma cotação

Limite de crédito atingido (402) ​

json
{
    "detail": {
        "code": 1004,
        "msg": "Postpaid credit limit reached.",
        "paymentMode": "postpaid",
        "reason": "limit_reached"
    }
}

Nada é ativado e nada é faturado. Novas ativações serão aceitas novamente assim que seu pagamento for registrado ou seu limite for aumentado.

Códigos de erro pós-pago ​

CódigoHTTPDescrição
10010200Resultado da consulta de preço (test)
10011200Cotação emitida (freezePrice)
1004402Limite de crédito pós-pago atingido
4100400Requisição inválida
4101400priceCurrency não suportado
4102400quoteId combinado com test ou freezePrice
4103409Cotação já utilizada
4104409Cotação expirada
4106404Cotação não encontrada
4107409Os parâmetros da requisição diferem da cotação
4108400Formato de quoteId inválido
4109422Não disponível para subcontas
5032503Preço temporariamente indisponível
5033503Taxa de câmbio temporariamente indisponível
5034503Faturamento temporariamente indisponível — a ativação não foi aceita
5036503Verificação de crédito temporariamente indisponível — tente novamente mais tarde

Para todas as respostas 4xx e 503 acima, nada é ativado e nada é faturado.


Observações ​

  • A idempotência fica a seu critério. O endpoint não possui chave de idempotência. Repetir uma requisição para um endereço que já está ativo é seguro e gratuito (2001), mas duas requisições simultâneas para o mesmo endereço novo podem prosseguir ao mesmo tempo. Serialize a ativação por endereço do seu lado.
  • O formato de orderId é A + dígitos e é exclusivo entre as ativações.
  • Nenhum webhook é enviado para ativação atualmente — a resposta e o hash são a confirmação. No momento, os webhooks cobrem apenas delegações confirmadas de energy, veja Webhooks.