Skip to content
Seções da documentação

Calcular

POSThttps://rftools.io/api/py/v1/calculate

Executa qualquer uma das 255 calculadoras com as entradas que você digitaria na página dela, nas unidades que a página mostra, e devolve cada saída, os avisos e a procedência em JSON.

Autentique-se com o cabeçalho X-API-Key. As chaves começam com rfc_ e são criadas no painel. Toda chamada é contabilizada na cota mensal da conta: 5 no Free, 100 no Pro, 10.000 no API.

Corpo da requisição

CalculateRequest
CampoDescrição
slugobrigatóriostringA calculadora, pelo slug do endereço da página dela, por exemplo rf-link-budget. Todos os slugs estão listados em Slugs e entradas.
inputsobrigatórioobject of numbersValores de entrada sob as chaves de entrada da calculadora, nas unidades que a referência dela lista. Envie todas as entradas: a maioria é obrigatória, e uma chamada sem alguma delas é recusada (400); uma entrada opcional omitida assume o padrão mostrado na referência. Uma chave que a calculadora não lê é ignorada com um aviso.

Entradas de rf-link-budget

Geradas a partir da definição da calculadora. Uma entrada fora da sua faixa ainda é calculada e sinalizada na procedência. As entradas de cada calculadora estão em Slugs e entradas.

Entradas de rf-link-budget
NomeUnidadeFaixaPadrãoDescrição
txPowernúmerodBm−30 … 10030Potência de saída do transmissor
txGainnúmerodBi−30 … 603Ganho da antena TX em dBi
txCableLossnúmerodB0 … 201Perdas de cabo TX + conector (valor positivo)
frequencynúmeroMHz0.1 … 10000002400Frequência central
distancenúmerokm0.001 … 10000001Distância entre TX e RX
rainFadenúmerodB0 … 500Atenuação da chuva de acordo com ITU-R P.838. Use 0 para links terrestres com linha de visão; 3—20 dB para links de satélite acima de 10 GHz em zonas de chuva forte.
atmosphericLossnúmerodB0 … 200.5Absorção gasosa (O₂ a 60 GHz: ~15 dB/km; H₂O a 22 GHz: ~0,2 dB/km). Use 0,5 dB típico para links terrestres abaixo de 6 GHz.
pointingLossnúmerodB0 … 100Perda de desalinhamento da antena. Pratos com feixe de lápis: 0,5—3 dB. Antenas omnidirecionais ou de feixe amplo: 0 dB.
extraLossCountnúmeronenhuma0 … 40Quantos termos extras de perda o orçamento inclui, como descasamento de polarização, perda pelo corpo ou folhagem
extraLoss1númerodB0 … 500Uma perda extra no percurso, como descasamento de polarização, perda pelo corpo, folhagem ou uma parede
extraLoss2númerodB0 … 500Uma perda extra no percurso, como descasamento de polarização, perda pelo corpo, folhagem ou uma parede
extraLoss3númerodB0 … 500Uma perda extra no percurso, como descasamento de polarização, perda pelo corpo, folhagem ou uma parede
extraLoss4númerodB0 … 500Uma perda extra no percurso, como descasamento de polarização, perda pelo corpo, folhagem ou uma parede
rxGainnúmerodBi−30 … 603Ganho de antena RX em dBi
rxCableLossnúmerodB0 … 201Perdas de cabo RX e conector
rxSensitivitynúmerodBm−160 … 0-90Nível mínimo de sinal a receber
targetMarginnúmerodB0 … 6010A margem de esmaecimento que o link deve manter acima da sensibilidade do receptor. O status passa igual ou superior a ele e falha abaixo de 0 dB.

Resposta

CalculateResponse
CampoDescrição
slugstringA calculadora, como pedida.
valuesobject of numbersCada saída pela chave, nas unidades que a referência lista. null quando um valor é ilimitado ou indefinido, como a perda de retorno de um casamento perfeito.
warningsstring[]Os avisos da própria calculadora e depois os da API: uma entrada não lida, uma entrada fora da faixa para a qual a calculadora é declarada.
errorsstring[]Os erros da calculadora; vazio em caso de sucesso.
provenanceobjectComo os valores foram calculados: método, versão do motor, referência da fórmula, premissas e faixa válida. Veja Procedência.

As saídas de rf-link-budget, em values:

Saídas de rf-link-budget
CampoUnidadeDescrição
fspldBPerda de caminho de espaço livre
eirpdBmEIRP
rxPowerdBmPotência recebida
linkMarginprincipaldBMargem do link
maxRangeKmkmAlcance máximo
totalAdditionalLossdBPerda adicional total
maxRangeAtTargetkmIntervalo na margem alvo
wavelengthmmComprimento de onda
fresnelRadiusmRaio da primeira zona de Fresnel

Erros

Erros de POST /calculate
StatusExceção PythonQuando
400ValidationErrorA requisição não pode ser respondida como foi enviada: uma entrada que não é um número finito, uma resolução que não pode ser montada, um corpo de trabalho fora do contrato, ou um lote vazio ou acima do limite. Nada é contabilizado.
401AuthErrorNenhuma chave foi enviada (o corpo traz keyUrl), ou a chave não foi emitida por nós, ou foi revogada. Nunca diz respeito à cota.
402QuotaErrorA cota mensal da conta se esgotou, em toda rota contabilizada. Nada foi contabilizado. Retry-After dá os segundos até resetAt.
404NotFoundNão existe esse slug de calculadora, tipo de trabalho ou trabalho. Nada é contabilizado.
422ValidationErrorO corpo não pode ser lido: falta um campo obrigatório, ou um valor tem o tipo errado (uma entrada enviada como texto). Respondido antes de a rota ser executada.
429RateLimitErrorRequisições demais em um minuto para a credencial, ou trabalhos demais na fila ou em execução ao mesmo tempo. Retry-After diz quando tentar de novo.
500APIErrorO resultado foi calculado mas não pôde ser devolvido, ou uma resolução falhou. Nada foi cobrado.
503APIErrorNão foi possível verificar a chave ou o contador da cota, ou não foi possível colocar um trabalho na fila. Nada entrou na fila nem foi cobrado; tente de novo.

Todas as verificações acontecem antes de qualquer contabilização: a chave, a calculadora e depois as entradas. Veja Erros para cada corpo.

Experimente

Envie uma requisição desta página com a sua própria chave. Ela é contabilizada como qualquer outra chamada.

Uma requisição precisa de uma chave e é contabilizada na cota da conta dessa chave. Obtenha uma chave gratuita.