Referência de API

pontos finais

POSTCriar Análise de CompraPOSTCriar análise de arbitragemPOSTCriar análise própriaPOSTCriar análise Cohost

RECURSOS

Primeiros PassosAutenticaçãoCódigos de erro

Documentação da API de Dados do Airbnb

Bem-vindo à API do BNBCalc. Esta documentação ajuda você a integrar a análise de propriedades de aluguel de curto prazo em seu aplicativo.

Use a API de Dados do Airbnb do BNBCalc para obter receita de propriedade, ocupação, ADR, listagens comparáveis ativas do Airbnb, percentis, métricas de investimento e URLs de relatórios hospedados para aplicativos, relatórios, subscrição e ferramentas de gestão.


Primeiros Passos

Para começar a usar a API de Dados do Airbnb do BNBCalc, você precisará de:

1. Crie uma conta BNBCalc ou faça login na sua conta existente

2. Navegue até as configurações da sua conta para gerar uma chave de API

3. Inclua sua chave de API em todas as requisições da API utilizando o cabeçalho x-bnbcalc-api-key.

4. Comece a fazer solicitações para acessar dados e análises de imóveis.

Todos os endpoints da API usam HTTPS e retornam respostas em JSON. Mantenha as chaves da API em seu servidor, não no código do cliente do navegador ou móvel. As rotas da API externa estão atualmente limitadas a 100 solicitações por segundo e usam códigos de resposta HTTP padrão para indicar sucesso ou falha.


Autenticação

Todas as solicitações da API requerem autenticação usando uma chave da API. As chaves da API estão vinculadas à sua conta do BNBCalc, devem ser mantidas do lado do servidor e nunca devem ser expostas no código do frontend. Inclua sua chave da API no cabeçalho da solicitação como mostrado abaixo:

x-bnbcalc-api-key: YOUR_API_KEY

Você pode gerar chaves da API de forma autônoma na página de configurações da sua conta. Inclua o cabeçalho x-bnbcalc-api-key em cada solicitação da API para autenticar.


POST/v1/external/analysis/create/buy

Criar Análise de Compra

Criar uma nova análise de compra para um imóvel. Requer detalhes do imóvel, informações sobre a localização e preço de compra.

Parâmetros de Localização (Condicional)

⚠️ Forneça lat E lng, OU forneça fullAddress. Pelo menos um método é obrigatório.

latnumbercondicional

Coordenada de latitude (deve ser fornecida com lng se fullAddress não for usado)(e.g., 27.7676)

lngnumbercondicional

Coordenada de longitude (deve ser fornecida com lat se fullAddress não for usado)(e.g., -82.6403)

fullAddressstringcondicional

Endereço completo da propriedade (pode ser usado no lugar das coordenadas lat/lng)(e.g., 4935 2nd Avenue North, St. Petersburg, FL 33703)

Parâmetros Obrigatórios

purchasePriceUSDnumberobrigatório

Preço de compra em USD(e.g., 350000)

bedroomsnumberobrigatório

Número de quartos(e.g., 3)

bathroomsnumberobrigatório

Número de banheiros(e.g., 2)

accomodatesnumberobrigatório

Número de hóspedes que a propriedade pode acomodar(e.g., 6)

Parâmetros Opcionais

monthlyRentUSDnumberopcional

Aluguel mensal esperado em USD para aluguel de longo prazo(e.g., 2500)

interestRatePercentagenumberopcional

Taxa de juro em percentagem (0-15)(e.g., 5.1)

squareFeetnumberopcional

Área em pés quadrados do imóvel(e.g., 1500)

statestringopcional

Nome do estado(e.g., Florida)

citystringopcional

Nome da cidade(e.g., St. Petersburg)

countystringopcional

Nome do condado(e.g., Pinellas County)

postalCodestringopcional

Código postal(e.g., 33703)

countrystringopcional

Nome do país(e.g., United States)

streetstringopcional

Nome da rua(e.g., 2nd Avenue North)

streetNumberstringopcional

Número da rua(e.g., 4935)

unitstringopcional

Número da unidade/apartamento, se aplicável

Exemplo de solicitação

curl -X POST \ https://atlas.bnbcalc.com/v1/external/analysis/create/buy \ -H "x-bnbcalc-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "lat": 27.7676, "lng": -82.6403, "bedrooms": 3, "bathrooms": 2, "accomodates": 6, "purchasePriceUSD": 400000 }'

Resposta de exemplo

{ "success": true, "data": { "_id": "000000000000000000000000", "url": "https://www.bnbcalc.com/analysis/example-property/000000000000000000000000", "currency": "USD", "ratePerNightUSD": 364.73770491803276, "occupancyRatePercentage": 48, "bedrooms": 4, "bathrooms": 4, "commonSpaces": 1, "accomodates": 12, "fullAddress": "4935 2nd Avenue North, St. Petersburg, FL 33703", "location": { "type": "Point", "coordinates": [ -82.6403, 27.7676 ] }, "revenue": { "p25": 48210, "p50": 58440, "p75": 63944.76398163934, "p90": 74280, "avg": 60310 }, "adr": { "p25": 214, "p50": 288, "p75": 364.73770491803276, "p90": 431, "avg": 318 }, "occupancy": { "p25": 0.38, "p50": 0.44, "p75": 0.48, "p90": 0.56, "avg": 0.46 }, "quartiles": { "25th_percentile": { "average_daily_rate": 214, "occupancy_rate": 38, "revenue": 48210 }, "50th_percentile": { "average_daily_rate": 288, "occupancy_rate": 44, "revenue": 58440 }, "75th_percentile": { "average_daily_rate": 364.73770491803276, "occupancy_rate": 48, "revenue": 63944.76398163934 }, "90th_percentile": { "average_daily_rate": 431, "occupancy_rate": 56, "revenue": 74280 } }, "comparables": [ { "airbnbId": "12345678", "name": "Modern 4BR near downtown", "listingUrl": "https://www.airbnb.com/rooms/12345678", "bedrooms": 4, "bathrooms": 3, "accommodates": 10, "annualRevenueUSD": 68420, "occupancyRatePercentage": 52, "averageDailyRateUSD": 361, "distanceMiles": 0.4 } ], "downPaymentPercentage": 20, "mortgageLength": 30, "yearsRemainingOnMortgage": 30, "interestRatePercentage": 4, "propertyTaxPercentage": 0.75, "monthlyRevenueUSD": 5328.730331803278, "monthlyExpensesUSD": 1474.1603364983607, "monthlyTaxesUSD": 250, "yearOneRevenueUSD": 63944.76398163934, "yearOneOperatingIncomeUSD": 46254.83994365901, "yearOneMorgageAndTaxesUSD": 21324, "yearOneCashFlowUSD": 24930.83994365901, "yearOneCashOnCashPercentage": 24.86817214984141, "yearOneCapRatePercentage": 11.563709985914752, "yearOneReturnOnInvestmentPercentage": 63.78402823049849, "yearOnePrincipalPaydownUSD": 85635.31658640636, "yearOneAppreciationUSD": 12000, "totalCashInvestment": 100252, "ltrPerMonthUSD": 1500, "ltrMonthlyExpensesPercentage": 10 } }

POST/v1/external/analysis/create/arb

Criar análise de arbitragem

Crie uma nova análise de arbitragem (arbitragem de aluguel) para uma propriedade. Usa os mesmos campos obrigatórios que a análise de compra.

Parâmetros de Localização (Condicional)

⚠️ Forneça lat E lng, OU forneça fullAddress. Pelo menos um método é obrigatório.

latnumbercondicional

Coordenada de latitude (deve ser fornecida com lng se fullAddress não for usado)(e.g., 27.7676)

lngnumbercondicional

Coordenada de longitude (deve ser fornecida com lat se fullAddress não for usado)(e.g., -82.6403)

fullAddressstringcondicional

Endereço completo da propriedade (pode ser usado no lugar das coordenadas lat/lng)(e.g., 4935 2nd Avenue North, St. Petersburg, FL 33703)

Parâmetros Obrigatórios

monthlyRentUSDnumberobrigatório

Aluguel mensal esperado em USD para aluguel de longo prazo(e.g., 2500)

bedroomsnumberobrigatório

Número de quartos(e.g., 3)

bathroomsnumberobrigatório

Número de banheiros(e.g., 2)

accomodatesnumberobrigatório

Número de hóspedes que a propriedade pode acomodar(e.g., 6)

Parâmetros Opcionais

purchasePriceUSDnumberopcional

Preço de compra em USD(e.g., 350000)

squareFeetnumberopcional

Área em pés quadrados do imóvel(e.g., 1500)

statestringopcional

Nome do estado(e.g., Florida)

citystringopcional

Nome da cidade(e.g., St. Petersburg)

countystringopcional

Nome do condado(e.g., Pinellas County)

postalCodestringopcional

Código postal(e.g., 33703)

countrystringopcional

Nome do país(e.g., United States)

streetstringopcional

Nome da rua(e.g., 2nd Avenue North)

streetNumberstringopcional

Número da rua(e.g., 4935)

unitstringopcional

Número da unidade/apartamento, se aplicável

Exemplo de solicitação

curl -X POST \ https://atlas.bnbcalc.com/v1/external/analysis/create/arb \ -H "x-bnbcalc-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "lat": 27.7676, "lng": -82.6403, "bedrooms": 3, "bathrooms": 2, "accomodates": 6, "monthlyRentUSD": 2000 }'

Resposta de exemplo

{ "success": true, "data": { "_id": "000000000000000000000000", "url": "https://www.bnbcalc.com/analysis/example-property/000000000000000000000000", "currency": "USD", "ratePerNightUSD": 364.73770491803276, "occupancyRatePercentage": 48, "bedrooms": 4, "bathrooms": 4, "commonSpaces": 1, "accomodates": 12, "fullAddress": "4935 2nd Avenue North, St. Petersburg, FL 33703", "location": { "type": "Point", "coordinates": [ -82.6403, 27.7676 ] }, "revenue": { "p25": 48210, "p50": 58440, "p75": 63944.76398163934, "p90": 74280, "avg": 60310 }, "adr": { "p25": 214, "p50": 288, "p75": 364.73770491803276, "p90": 431, "avg": 318 }, "occupancy": { "p25": 0.38, "p50": 0.44, "p75": 0.48, "p90": 0.56, "avg": 0.46 }, "quartiles": { "25th_percentile": { "average_daily_rate": 214, "occupancy_rate": 38, "revenue": 48210 }, "50th_percentile": { "average_daily_rate": 288, "occupancy_rate": 44, "revenue": 58440 }, "75th_percentile": { "average_daily_rate": 364.73770491803276, "occupancy_rate": 48, "revenue": 63944.76398163934 }, "90th_percentile": { "average_daily_rate": 431, "occupancy_rate": 56, "revenue": 74280 } }, "comparables": [ { "airbnbId": "12345678", "name": "Modern 4BR near downtown", "listingUrl": "https://www.airbnb.com/rooms/12345678", "bedrooms": 4, "bathrooms": 3, "accommodates": 10, "annualRevenueUSD": 68420, "occupancyRatePercentage": 52, "averageDailyRateUSD": 361, "distanceMiles": 0.4 } ], "monthlyRentUSD": 2000, "yearOneRentUSD": 24000, "monthlyRevenueUSD": 13432.825977452352, "monthlyExpensesUSD": 2263.6108575197586, "yearOneRevenueUSD": 161193.91172942822, "yearOneOperatingIncomeUSD": 134030.58143919113, "yearOneCashFlowUSD": 110030.58143919116, "yearOneCashOnCashPercentage": 1317.415965507557, "totalCashInvestment": 8352 } }

POST/v1/external/analysis/create/owned

Criar análise própria

Crie uma nova análise de imóvel próprio. Utiliza os mesmos campos obrigatórios da análise de compra.

Parâmetros de Localização (Condicional)

⚠️ Forneça lat E lng, OU forneça fullAddress. Pelo menos um método é obrigatório.

latnumbercondicional

Coordenada de latitude (deve ser fornecida com lng se fullAddress não for usado)(e.g., 27.7676)

lngnumbercondicional

Coordenada de longitude (deve ser fornecida com lat se fullAddress não for usado)(e.g., -82.6403)

fullAddressstringcondicional

Endereço completo da propriedade (pode ser usado no lugar das coordenadas lat/lng)(e.g., 4935 2nd Avenue North, St. Petersburg, FL 33703)

Parâmetros Obrigatórios

purchasePriceUSDnumberobrigatório

Preço de compra em USD(e.g., 350000)

downPaymentPercentagenumberobrigatório

Percentual de entrada (0-40)(e.g., 20)

interestRatePercentagenumberobrigatório

Taxa de juro em percentagem (0-15)(e.g., 5.1)

mortgageLengthnumberobrigatório

Prazo da hipoteca em anos (0-30)(e.g., 30)

yearsRemainingOnMortgagenumberobrigatório

Anos restantes na hipoteca (Não pode ser maior que o prazo da hipoteca)

bedroomsnumberobrigatório

Número de quartos(e.g., 3)

bathroomsnumberobrigatório

Número de banheiros(e.g., 2)

accomodatesnumberobrigatório

Número de hóspedes que a propriedade pode acomodar(e.g., 6)

Parâmetros Opcionais

monthlyRentUSDnumberopcional

Aluguel mensal esperado em USD para aluguel de longo prazo(e.g., 2500)

squareFeetnumberopcional

Área em pés quadrados do imóvel(e.g., 1500)

statestringopcional

Nome do estado(e.g., Florida)

citystringopcional

Nome da cidade(e.g., St. Petersburg)

countystringopcional

Nome do condado(e.g., Pinellas County)

postalCodestringopcional

Código postal(e.g., 33703)

countrystringopcional

Nome do país(e.g., United States)

streetstringopcional

Nome da rua(e.g., 2nd Avenue North)

streetNumberstringopcional

Número da rua(e.g., 4935)

unitstringopcional

Número da unidade/apartamento, se aplicável

Exemplo de solicitação

curl -X POST \ https://atlas.bnbcalc.com/v1/external/analysis/create/owned \ -H "x-bnbcalc-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "lat": 27.7676, "lng": -82.6403, "bedrooms": 3, "bathrooms": 2, "accomodates": 6, "purchasePriceUSD": 350000, "downPaymentPercentage": 20, "interestRatePercentage": 5.1, "mortgageLength": 30, "yearsRemainingOnMortgage": 30 }'

Resposta de exemplo

{ "success": true, "data": { "_id": "000000000000000000000000", "url": "https://www.bnbcalc.com/analysis/example-property/000000000000000000000000", "currency": "USD", "ratePerNightUSD": 364.73770491803276, "occupancyRatePercentage": 48, "bedrooms": 4, "bathrooms": 4, "commonSpaces": 1, "accomodates": 12, "fullAddress": "4935 2nd Avenue North, St. Petersburg, FL 33703", "location": { "type": "Point", "coordinates": [ -82.6403, 27.7676 ] }, "revenue": { "p25": 48210, "p50": 58440, "p75": 63944.76398163934, "p90": 74280, "avg": 60310 }, "adr": { "p25": 214, "p50": 288, "p75": 364.73770491803276, "p90": 431, "avg": 318 }, "occupancy": { "p25": 0.38, "p50": 0.44, "p75": 0.48, "p90": 0.56, "avg": 0.46 }, "quartiles": { "25th_percentile": { "average_daily_rate": 214, "occupancy_rate": 38, "revenue": 48210 }, "50th_percentile": { "average_daily_rate": 288, "occupancy_rate": 44, "revenue": 58440 }, "75th_percentile": { "average_daily_rate": 364.73770491803276, "occupancy_rate": 48, "revenue": 63944.76398163934 }, "90th_percentile": { "average_daily_rate": 431, "occupancy_rate": 56, "revenue": 74280 } }, "comparables": [ { "airbnbId": "12345678", "name": "Modern 4BR near downtown", "listingUrl": "https://www.airbnb.com/rooms/12345678", "bedrooms": 4, "bathrooms": 3, "accommodates": 10, "annualRevenueUSD": 68420, "occupancyRatePercentage": 52, "averageDailyRateUSD": 361, "distanceMiles": 0.4 } ], "downPaymentPercentage": 20, "mortgageLength": 30, "yearsRemainingOnMortgage": 30, "interestRatePercentage": 5.1, "propertyTaxPercentage": 0.75, "monthlyRevenueUSD": 5328.730331803278, "monthlyExpensesUSD": 1474.1603364983607, "monthlyTaxesUSD": 250, "yearOneRevenueUSD": 63944.76398163934, "yearOneOperatingIncomeUSD": 46254.83994365901, "yearOneMorgageAndTaxesUSD": 21324, "yearOneCashFlowUSD": 24930.83994365901, "yearOneCashOnCashPercentage": 24.86817214984141, "yearOneCapRatePercentage": 11.563709985914752, "yearOneReturnOnInvestmentPercentage": 63.78402823049849, "yearOnePrincipalPaydownUSD": 85635.31658640636, "yearOneAppreciationUSD": 12000, "totalCashInvestment": 100252, "ltrPerMonthUSD": 1500, "ltrMonthlyExpensesPercentage": 10 } }

POST/v1/external/analysis/create/cohost

Criar análise Cohost

Criar histórico de coanfitriões

Parâmetros de Localização (Condicional)

⚠️ Forneça lat E lng, OU forneça fullAddress. Pelo menos um método é obrigatório.

latnumbercondicional

Coordenada de latitude (deve ser fornecida com lng se fullAddress não for usado)(e.g., 27.7676)

lngnumbercondicional

Coordenada de longitude (deve ser fornecida com lat se fullAddress não for usado)(e.g., -82.6403)

fullAddressstringcondicional

Endereço completo da propriedade (pode ser usado no lugar das coordenadas lat/lng)(e.g., 4935 2nd Avenue North, St. Petersburg, FL 33703)

Parâmetros Obrigatórios

bedroomsnumberobrigatório

Número de quartos(e.g., 3)

bathroomsnumberobrigatório

Número de banheiros(e.g., 2)

accomodatesnumberobrigatório

Número de hóspedes que a propriedade pode acomodar(e.g., 6)

Parâmetros Opcionais

cohostCommissionPercentagenumberopcional

Percentual de comissão do coanfitrião(e.g., 10)

squareFeetnumberopcional

Área em pés quadrados do imóvel(e.g., 1500)

statestringopcional

Nome do estado(e.g., Florida)

citystringopcional

Nome da cidade(e.g., St. Petersburg)

countystringopcional

Nome do condado(e.g., Pinellas County)

postalCodestringopcional

Código postal(e.g., 33703)

countrystringopcional

Nome do país(e.g., United States)

streetstringopcional

Nome da rua(e.g., 2nd Avenue North)

streetNumberstringopcional

Número da rua(e.g., 4935)

unitstringopcional

Número da unidade/apartamento, se aplicável

Exemplo de solicitação

curl -X POST \ https://atlas.bnbcalc.com/v1/external/analysis/create/cohost \ -H "x-bnbcalc-api-key: YOUR_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "lat": 27.7676, "lng": -82.6403, "bedrooms": 3, "bathrooms": 2, "accomodates": 6 }'

Resposta de exemplo

{ "success": true, "data": { "_id": "000000000000000000000000", "url": "https://www.bnbcalc.com/analysis/example-property/000000000000000000000000", "currency": "USD", "ratePerNightUSD": 364.73770491803276, "occupancyRatePercentage": 48, "bedrooms": 4, "bathrooms": 4, "commonSpaces": 1, "accomodates": 12, "fullAddress": "4935 2nd Avenue North, St. Petersburg, FL 33703", "location": { "type": "Point", "coordinates": [ -82.6403, 27.7676 ] }, "revenue": { "p25": 48210, "p50": 58440, "p75": 63944.76398163934, "p90": 74280, "avg": 60310 }, "adr": { "p25": 214, "p50": 288, "p75": 364.73770491803276, "p90": 431, "avg": 318 }, "occupancy": { "p25": 0.38, "p50": 0.44, "p75": 0.48, "p90": 0.56, "avg": 0.46 }, "quartiles": { "25th_percentile": { "average_daily_rate": 214, "occupancy_rate": 38, "revenue": 48210 }, "50th_percentile": { "average_daily_rate": 288, "occupancy_rate": 44, "revenue": 58440 }, "75th_percentile": { "average_daily_rate": 364.73770491803276, "occupancy_rate": 48, "revenue": 63944.76398163934 }, "90th_percentile": { "average_daily_rate": 431, "occupancy_rate": 56, "revenue": 74280 } }, "comparables": [ { "airbnbId": "12345678", "name": "Modern 4BR near downtown", "listingUrl": "https://www.airbnb.com/rooms/12345678", "bedrooms": 4, "bathrooms": 3, "accommodates": 10, "annualRevenueUSD": 68420, "occupancyRatePercentage": 52, "averageDailyRateUSD": 361, "distanceMiles": 0.4 } ], "yearOneRevenueUSD": 161193.91172942825, "yearOneCohostReturnUSD": 116059.61644518835, "yearOneCohostCommissionUSD": 32238.78234588565 } }

Códigos de erro

A API do BNBCalc usa códigos de status de resposta HTTP padrão para indicar o sucesso ou a falha das solicitações da API. Relatórios criados com sucesso retornam códigos 2xx, enquanto erros retornam códigos 4xx ou 5xx com informações de erro adicionais no corpo da resposta. Você será cobrado apenas por relatórios criados com sucesso.

200

Sucesso


400

Requisição inválida - Parâmetros inválidos


401

Não autorizado - Chave de API inválida


429

Muitas Solicitações - Limite da rota da API externa excedido


500

Erro interno do servidor