Ir para o conteúdo

Quickstart

1. Obtenha uma chave de API

Para testar agora mesmo use uma chave pública de demo (6 req/min por padrão, sem endpoints de IA):

X-API-Key: demo_ttp_free_2604

Para qualquer uso além do primeiro teste, pegue uma chave sua no cadastro gratuito — o free tier é self-service e a chave sai na hora, sem cartão. A chave de demo é compartilhada e pública: o balde de rate limit é indexado pela chave, não pelo seu IP, então os 6 req/min são somados entre todos que a usam. Ela serve para o primeiro curl e não para o seu protótipo.

A partir daqui os exemplos leem a chave do ambiente, para ela não acabar versionada por acidente:

export TTP_API_KEY="sua_chave_aqui"

2. Faça sua primeira chamada

curl -X POST https://api.telecomtowerpower.com.br/analyze_link \
  -H "X-API-Key: ${TTP_API_KEY}" \
  -H "Content-Type: application/json" \
  -d '{
    "receiver": {"lat": -15.78, "lon": -47.93, "height": 10},
    "frequency_mhz": 1800
  }'
import os

import requests

resp = requests.post(
    "https://api.telecomtowerpower.com.br/analyze_link",
    headers={"X-API-Key": os.environ["TTP_API_KEY"]},
    json={
        "receiver": {"lat": -15.78, "lon": -47.93, "height": 10},
        "frequency_mhz": 1800,
    },
    timeout=30,
)
resp.raise_for_status()
print(resp.json()["link_margin_db"])
const resp = await fetch(
  "https://api.telecomtowerpower.com.br/analyze_link",
  {
    method: "POST",
    headers: {
      "X-API-Key": process.env.TTP_API_KEY,
      "Content-Type": "application/json",
    },
    body: JSON.stringify({
      receiver: { lat: -15.78, lon: -47.93, height: 10 },
      frequency_mhz: 1800,
    }),
  },
);
if (!resp.ok) throw new Error(`HTTP ${resp.status}`);
const data = await resp.json();
console.log(data.link_margin_db);

Se vier 429, você bateu no rate limit — provavelmente ainda usando a chave de demo compartilhada. Veja limites de taxa.

3. Interprete o resultado

A API retorna a melhor torre candidata com link_margin_db. Valores acima de 10 dB geralmente indicam enlace viável em céu claro; acima de 20 dB suporta chuva intensa nas bandas 700/1800/2100 MHz.

4. Próximos passos