{"openapi":"3.1.0","info":{"title":"PrismaData — Renda","version":"1.0.0","termsOfService":"https://prismadata.io/terms","contact":{"name":"PrismaData Support Team","url":"https://prismadata.io/contact","email":"suporte.api@prismadata.io"},"license":{"name":"Proprietary","url":"https://api.prismadata.io/license"},"description":"A API de renda fornece estimativas da renda na região próxima de determinada\ncoordenada geográfica. Veja que esta informação de renda não se refere à uma\npessoa específica, mas sim a uma região em que ela mora ou se encontra em\ndeterminado momento.\n\nSe a coordenada geográfica de entrada (latitude/longitude) não for localizada\nno Brasil, valores nulos serão retornados.\n\nMaiores informações podem ser encontradas na documentação de produto:\n1. [Renda Pessoal Estática](https://prismadata.io/doc-comercial/renda-estatica/)\n2. [Renda Pessoal Dinâmica (PDF)](https://prismadata.io/doc-comercial/renda-dinamica/)\n\nTestes manuais com o fim de se compreender melhor o dado podem ser feitos [aqui](https://prismadata.io/testador-de-api/api-de-localizacao/).\n"},"servers":[{"url":"https://api.prismadata.io/v1","description":"Ambiente de Produção"}],"security":[{"X-Apikey":[]},{"api_key":[]},{"BearerAuth":[]}],"tags":[{"name":"Renda","description":"A API de renda fornece estimativas da renda na região próxima de determinada\ncoordenada geográfica. Veja que esta informação de renda não se refere à uma\npessoa específica, mas sim a uma região em que ela mora ou se encontra em\ndeterminado momento.\n\nSe a coordenada geográfica de entrada (latitude/longitude) não for localizada\nno Brasil, valores nulos serão retornados.\n\nMaiores informações podem ser encontradas na documentação de produto:\n1. [Renda Pessoal Estática](https://prismadata.io/doc-comercial/renda-estatica/)\n2. [Renda Pessoal Dinâmica (PDF)](https://prismadata.io/doc-comercial/renda-dinamica/)\n\nTestes manuais com o fim de se compreender melhor o dado podem ser feitos [aqui](https://prismadata.io/testador-de-api/api-de-localizacao/).\n"}],"paths":{"/location/personal_income_static":{"get":{"tags":["Renda"],"summary":"Renda estimada no setor censitário do ponto","description":"Endpoint para se consultar a renda estimada do setor censitário que\ncontém a coordenada geográfica (latitude/longitude). Retorna a posição da\nrenda da região em percentis nos contextos nacional, estadual (UF) e\nmunicipal, além da faixa salarial típica em múltiplos de salário mínimo.\nCaso a coordenada não esteja dentro de nenhum setor censitário com dados\nde renda disponíveis (por exemplo, fora do território brasileiro), valores\nnulos são retornados.","operationId":"query_static_query_personal_income_static_get","parameters":[{"name":"lat","in":"query","required":true,"schema":{"type":"number","exclusiveMaximum":90,"exclusiveMinimum":-90,"description":"Latitude do ponto a ser estudado.","title":"Lat"},"description":"Latitude do ponto a ser estudado.","example":-19.932378368680315},{"name":"lng","in":"query","required":true,"schema":{"type":"number","exclusiveMaximum":180,"exclusiveMinimum":-180,"description":"Longitude do ponto a ser estudado.","title":"Lng"},"description":"Longitude do ponto a ser estudado.","example":-43.9351245162891}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"description":"Percentis de renda pré-calculados e faixa salarial do setor censitário\nque contém a coordenada consultada.","properties":{"prismadata__personal_income_static__faixa_sm_min":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Limite inferior da faixa salarial em múltiplos de\n    salário mínimo (SM). Exemplo: 5.0 significa 5 SM","title":"Prismadata  Personal Income Static  Faixa Sm Min"},"prismadata__personal_income_static__faixa_sm_max":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Limite superior da faixa salarial em múltiplos de\n    salário mínimo (SM). Null quando a faixa é aberta (acima de 10 SM)","title":"Prismadata  Personal Income Static  Faixa Sm Max"},"prismadata__personal_income_static__percentil_br":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"Dado o contexto do brasileiro, em qual percentil esta renda\n    se encontra. Valores maiores indicam que a região do ponto apresenta\n    pessoas com renda elevada dentro do contexto brasileiro.","title":"Prismadata  Personal Income Static  Percentil Br"},"prismadata__personal_income_static__percentil_mun":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"O percentil da renda da região da coordenada geográfica em\n    relação ao município brasileiro em que o ponto se encontra. Valores elevados\n    indicam uma região com renda elevada naquele município.","title":"Prismadata  Personal Income Static  Percentil Mun"},"prismadata__personal_income_static__percentil_uf":{"anyOf":[{"type":"integer"},{"type":"null"}],"description":"O percentil da renda da região da coordenada geográfica em\n    relação à unidade da federação brasileira (Estado) em que o ponto se\n    encontra. Novamente, valores maiores significam regiões de renda elevada\n    dentro do contexto da UF.","title":"Prismadata  Personal Income Static  Percentil Uf"}},"required":["prismadata__personal_income_static__faixa_sm_min","prismadata__personal_income_static__faixa_sm_max","prismadata__personal_income_static__percentil_br","prismadata__personal_income_static__percentil_mun","prismadata__personal_income_static__percentil_uf"],"title":"PersonalIncomeStaticResponse","type":"object"},"example":{"prismadata__personal_income_static__faixa_sm_min":5.0,"prismadata__personal_income_static__faixa_sm_max":10.0,"prismadata__personal_income_static__percentil_br":98,"prismadata__personal_income_static__percentil_mun":90,"prismadata__personal_income_static__percentil_uf":99}}},"headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}}},"401":{"description":"Unauthorized - Missing or invalid API key (X-Apikey header or api_key query parameter)","headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}}},"403":{"description":"Forbidden - Missing privileges to retrieve data","headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}}},"422":{"description":"Validation Error","headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"429":{"$ref":"#/components/responses/RateLimitExceeded"}},"x-codeSamples":[{"lang":"curl","source":"curl \"https://api.prismadata.io/v1/location/personal_income_static?lat=-19.932378368680315&lng=-43.9351245162891\" \\\n  -H \"X-Apikey: ak_xxxxxxxxxxxxxxxx\""},{"lang":"Python","source":"import httpx\n\nresp = httpx.get(\n    \"https://api.prismadata.io/v1/location/personal_income_static\",\n    params={\"lat\": -19.932378368680315, \"lng\": -43.9351245162891},\n    headers={\"X-Apikey\": \"ak_xxxxxxxxxxxxxxxx\"},\n)\ndados = resp.json()"},{"lang":"Python SDK","source":"from prismadata import Client\n\nclient = Client(api_key=\"ak_xxxxxxxxxxxxxxxx\")\nresult = client.income_static(lat=-23.55, lng=-46.63)\nprint(result)"},{"lang":"R SDK","source":"library(prismadata)\n\nclient <- prismadata_client(api_key = \"ak_xxxxxxxxxxxxxxxx\")\nresult <- client$income_static(lat = -23.55, lng = -46.63)\nprint(result)"},{"lang":"TypeScript SDK","source":"import { PrismaDataClient } from \"prismadata\";\n\nconst client = new PrismaDataClient({ apiKey: \"ak_xxxxxxxxxxxxxxxx\" });\nconst result = await client.incomeStatic(-23.55, -46.63);\nconsole.log(result);"}]}},"/location/personal_income_pdf":{"get":{"tags":["Renda"],"summary":"Distribuição de renda no entorno do ponto","description":"Endpoint para se consultar a renda na coordenada geográfica. As informações\nretornadas são gerados por um modelo que é uma função de densidade de\nprobabilidade (Probability Density Function - PDF). Opcionalmente,\npode-se definir um perfil detalhado do indivíduo que se deseja estimar a\nrenda.","operationId":"query_pdf_query_personal_income_pdf_get","parameters":[{"name":"lat","in":"query","required":true,"schema":{"type":"number","exclusiveMaximum":90,"exclusiveMinimum":-90,"description":"Latitude do ponto de origem.","title":"Lat"},"description":"Latitude do ponto de origem.","example":-19.932378368680315},{"name":"lng","in":"query","required":true,"schema":{"type":"number","exclusiveMaximum":180,"exclusiveMinimum":-180,"description":"Longitude do ponto de origem","title":"Lng"},"description":"Longitude do ponto de origem","example":-43.9351245162891},{"name":"gender","in":"query","required":false,"schema":{"anyOf":[{"$ref":"#/components/schemas/Genero"},{"type":"null"}],"description":"Gênero da pessoa que se deseja analisar a renda. [M, F, male, female]","title":"Gender"},"description":"Gênero da pessoa que se deseja analisar a renda. [M, F, male, female]","example":"M"},{"name":"age","in":"query","required":false,"schema":{"anyOf":[{"type":"number","exclusiveMaximum":90,"exclusiveMinimum":15},{"type":"null"}],"description":"Idade da pessoa que se deseja analisar a renda","title":"Age"},"description":"Idade da pessoa que se deseja analisar a renda","example":50},{"name":"is_responsible","in":"query","required":false,"schema":{"anyOf":[{"$ref":"#/components/schemas/AtributosBooleanos"},{"type":"null"}],"description":"Indicador se as pessoas que se deseja analisar a renda são responsáveis pelo domicílio","title":"Is Responsible"},"description":"Indicador se as pessoas que se deseja analisar a renda são responsáveis pelo domicílio","example":"false"},{"name":"income_compared","in":"query","required":false,"schema":{"anyOf":[{"type":"number","exclusiveMinimum":0},{"type":"null"}],"description":"Renda a ser comparada com a renda da região.","title":"Income Compared"},"description":"Renda a ser comparada com a renda da região.","example":10000},{"name":"date_income","in":"query","required":false,"schema":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"description":"Data a ser consultada a renda no formato YYYY-MM-DD. Somente datas após 2022-01-01 são válidas.","title":"Date Income"},"description":"Data a ser consultada a renda no formato YYYY-MM-DD. Somente datas após 2022-01-01 são válidas.","example":"2025-01-25"}],"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"description":"Distribuição de renda estimada por modelo para a vizinhança da\ncoordenada consultada, com estatísticas agregadas e, quando\n`income_compared` é informado, a comparação com a renda pesquisada.","properties":{"prismadata__personal_income_pdf__qtde_pessoas":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Estimativa da quantidade de pessoas que se encontram na\n    vizinhança do ponto.","title":"Prismadata  Personal Income Pdf  Qtde Pessoas"},"prismadata__personal_income_pdf__qtde_pessoas_sem_renda":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Estimativa da quantidade de pessoas da região que não possuem\n    uma renda mensal.","title":"Prismadata  Personal Income Pdf  Qtde Pessoas Sem Renda"},"prismadata__personal_income_pdf__renda_comparada_cdf":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Quando uma renda a ser comparada é informada, indica quantas\n    pessoas (em termos percentuais) da região possuem uma renda inferior à renda\n    pesquisada.\n    Só está presente na resposta quando o parâmetro `income_compared` é\n    informado na requisição.","title":"Prismadata  Personal Income Pdf  Renda Comparada Cdf"},"prismadata__personal_income_pdf__renda_comparada_pdf":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Quando uma renda a ser comparada é informada, indica o quão\n    provável é alguém possuir exatamente aquela renda na região.\n    Só está presente na resposta quando o parâmetro `income_compared` é\n    informado na requisição.","title":"Prismadata  Personal Income Pdf  Renda Comparada Pdf"},"prismadata__personal_income_pdf__renda_comparada_z_score":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Quando uma renda a ser comparada é informada, indica o\n    desvio desta renda com a renda característica da região. Valores próximos à\n    zero indicam uma proximidade das rendas e valores com magnitude elevada\n    indicam valores díspares entre si. Valores de z-score positivos, indicam uma\n    renda comparada acima da renda característica da região e valores negativos\n    indicam valores abaixo da renda característica da região.\n    Só está presente na resposta quando o parâmetro `income_compared` é\n    informado na requisição.","title":"Prismadata  Personal Income Pdf  Renda Comparada Z Score"},"prismadata__personal_income_pdf__renda_media_pessoas":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Indica a renda média entre as pessoas da região\n    considerando-se todas as pessoas, inclusive as pessoas sem renda, que tendem\n    a reduzir esse valor.","title":"Prismadata  Personal Income Pdf  Renda Media Pessoas"},"prismadata__personal_income_pdf__renda_pessoas_com_renda_desvio_padrao":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Desvio padrão da PDF da renda da região, indicando o quão\n    diversa é a renda dos indivíduos na região. Valores menores indicam uma\n    renda mais homogênea e valores maiores uma renda mais variada. Este valor é\n    obtido considerando somente as pessoas que apresentam renda mensal na\n    região.","title":"Prismadata  Personal Income Pdf  Renda Pessoas Com Renda Desvio Padrao"},"prismadata__personal_income_pdf__renda_pessoas_com_renda_maxima":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Estimativa do valor de renda máxima mensal estimada na região.\n    Este valor é obtido considerando somente as pessoas que apresentam renda\n    mensal na região.","title":"Prismadata  Personal Income Pdf  Renda Pessoas Com Renda Maxima"},"prismadata__personal_income_pdf__renda_pessoas_com_renda_media":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Estimativa do valor de renda média mensal estimada na região.\n    Este valor é obtido considerando somente as pessoas que apresentam renda\n    mensal na região.","title":"Prismadata  Personal Income Pdf  Renda Pessoas Com Renda Media"},"prismadata__personal_income_pdf__renda_pessoas_com_renda_mediana":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Estimativa do valor que divide as pessoas entre o 50% mais\n    rico e o 50% mais pobre da região. Este valor é obtido considerando somente\n    as pessoas que apresentam renda mensal na região.","title":"Prismadata  Personal Income Pdf  Renda Pessoas Com Renda Mediana"},"prismadata__personal_income_pdf__renda_pessoas_com_renda_minima":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Estimativa do valor de renda mínima mensal da região. Este\n    valor é obtido considerando somente as pessoas que apresentam renda mensal\n    na região.","title":"Prismadata  Personal Income Pdf  Renda Pessoas Com Renda Minima"},"prismadata__personal_income_pdf__renda_pessoas_com_renda_primeiro_quartil":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Estimativa do valor de renda mensal que divide o 25% mais\n    pobre e o 75% mais rico da região. Este valor é obtido considerando somente\n    as pessoas que apresentam renda mensal na região.","title":"Prismadata  Personal Income Pdf  Renda Pessoas Com Renda Primeiro Quartil"},"prismadata__personal_income_pdf__renda_pessoas_com_renda_qtde":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Quantidade de pessoas que apresentam renda mensal.","title":"Prismadata  Personal Income Pdf  Renda Pessoas Com Renda Qtde"},"prismadata__personal_income_pdf__renda_pessoas_com_renda_terceiro_quartil":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Estimativa do valor de renda mensal que divide o 75% mais\n    pobre e o 25% mais rico da região. Este valor é obtido considerando\n    somente as pessoas que apresentam renda mensal na região.","title":"Prismadata  Personal Income Pdf  Renda Pessoas Com Renda Terceiro Quartil"},"prismadata__personal_income_pdf__renda_total":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Estimativa da renda nominal total, que representa a soma da\n    renda mensal de todos os indivíduos da região.","title":"Prismadata  Personal Income Pdf  Renda Total"},"prismadata__personal_income_pdf__renda_total_m2":{"anyOf":[{"type":"number"},{"type":"null"}],"description":"Estimativa da renda nominal total, que representa a soma da\n    renda mensal de todos os indivíduos da região dividida pela área da região\n    que se considera na modelagem. Valores maiores indicam não só uma região\n    rica, mas também uma região verticalizada, isto é, com alta concentração\n    espacial de renda.","title":"Prismadata  Personal Income Pdf  Renda Total M2"}},"required":["prismadata__personal_income_pdf__qtde_pessoas","prismadata__personal_income_pdf__qtde_pessoas_sem_renda","prismadata__personal_income_pdf__renda_media_pessoas","prismadata__personal_income_pdf__renda_pessoas_com_renda_desvio_padrao","prismadata__personal_income_pdf__renda_pessoas_com_renda_maxima","prismadata__personal_income_pdf__renda_pessoas_com_renda_media","prismadata__personal_income_pdf__renda_pessoas_com_renda_mediana","prismadata__personal_income_pdf__renda_pessoas_com_renda_minima","prismadata__personal_income_pdf__renda_pessoas_com_renda_primeiro_quartil","prismadata__personal_income_pdf__renda_pessoas_com_renda_qtde","prismadata__personal_income_pdf__renda_pessoas_com_renda_terceiro_quartil","prismadata__personal_income_pdf__renda_total","prismadata__personal_income_pdf__renda_total_m2"],"title":"PersonalIncomeDynamicResponse","type":"object"},"example":{"prismadata__personal_income_pdf__qtde_pessoas":475.0,"prismadata__personal_income_pdf__qtde_pessoas_sem_renda":61.0,"prismadata__personal_income_pdf__renda_comparada_cdf":69.58161423037396,"prismadata__personal_income_pdf__renda_comparada_pdf":4.347742504677703e-05,"prismadata__personal_income_pdf__renda_comparada_z_score":0.5124048241824011,"prismadata__personal_income_pdf__renda_media_pessoas":7977.094543374305,"prismadata__personal_income_pdf__renda_pessoas_com_renda_desvio_padrao":8734.869682287694,"prismadata__personal_income_pdf__renda_pessoas_com_renda_maxima":61487.85959498082,"prismadata__personal_income_pdf__renda_pessoas_com_renda_media":9152.463546142017,"prismadata__personal_income_pdf__renda_pessoas_com_renda_mediana":6781.762582549223,"prismadata__personal_income_pdf__renda_pessoas_com_renda_minima":697.1449013796515,"prismadata__personal_income_pdf__renda_pessoas_com_renda_primeiro_quartil":3582.7074159885547,"prismadata__personal_income_pdf__renda_pessoas_com_renda_qtde":414.0,"prismadata__personal_income_pdf__renda_pessoas_com_renda_terceiro_quartil":11412.45045466984,"prismadata__personal_income_pdf__renda_total":3789119.908102795,"prismadata__personal_income_pdf__renda_total_m2":95.5377576127026}}},"headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}}},"401":{"description":"Unauthorized - Missing or invalid API key (X-Apikey header or api_key query parameter)","headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}}},"403":{"description":"Forbidden - Missing privileges to retrieve data","headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}}},"422":{"description":"Validation Error","headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"429":{"$ref":"#/components/responses/RateLimitExceeded"}},"x-codeSamples":[{"lang":"curl","source":"curl \"https://api.prismadata.io/v1/location/personal_income_pdf?lat=-19.932378368680315&lng=-43.9351245162891&gender=M&age=50&is_responsible=false&income_compared=10000&date_income=2025-01-25\" \\\n  -H \"X-Apikey: ak_xxxxxxxxxxxxxxxx\""},{"lang":"Python","source":"import httpx\n\nresp = httpx.get(\n    \"https://api.prismadata.io/v1/location/personal_income_pdf\",\n    params={\"lat\": -19.932378368680315, \"lng\": -43.9351245162891, \"gender\": 'M', \"age\": 50, \"is_responsible\": 'false', \"income_compared\": 10000, \"date_income\": '2025-01-25'},\n    headers={\"X-Apikey\": \"ak_xxxxxxxxxxxxxxxx\"},\n)\ndados = resp.json()"},{"lang":"Python SDK","source":"from prismadata import Client\n\nclient = Client(api_key=\"ak_xxxxxxxxxxxxxxxx\")\nresult = client.income_pdf(\n    lat=-23.55,\n    lng=-46.63,\n    gender=\"M\",\n    age=35,\n)\nprint(result)"},{"lang":"R SDK","source":"library(prismadata)\n\nclient <- prismadata_client(api_key = \"ak_xxxxxxxxxxxxxxxx\")\nresult <- client$income_pdf(\n  lat = -23.55,\n  lng = -46.63,\n  gender = \"M\",\n  age = 35\n)\nprint(result)"},{"lang":"TypeScript SDK","source":"import { PrismaDataClient } from \"prismadata\";\n\nconst client = new PrismaDataClient({ apiKey: \"ak_xxxxxxxxxxxxxxxx\" });\nconst result = await client.incomePdf(-23.55, -46.63, {\n  gender: \"M\",\n  age: 35,\n});\nconsole.log(result);"}]}},"/location/batch/personal_income_static":{"post":{"tags":["Renda"],"summary":"Renda estimada em lote","description":"Endpoint batch para consulta de renda estática. Recebe múltiplos pontos\ne retorna percentis e faixa salarial para cada um.","operationId":"batch_personal_income_static","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/income_LocationDict"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"$ref":"#/components/schemas/PersonalIncomeStaticResponse"},"type":"object","title":"BatchStaticResponse","description":"Resultados estáticos por ponto. Chave = ID do ponto enviado na requisição."}}},"headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}}},"401":{"description":"Unauthorized - Missing or invalid API key","headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}}},"403":{"description":"Forbidden - Missing privileges to retrieve data","headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}}},"422":{"description":"Validation Error","headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"429":{"$ref":"#/components/responses/RateLimitExceeded"}},"x-codeSamples":[{"lang":"curl","source":"curl -X POST \"https://api.prismadata.io/v1/location/batch/personal_income_static\" \\\n  -H \"X-Apikey: ak_xxxxxxxxxxxxxxxx\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"1\": [-23.55, -46.63], \"2\": [-22.90, -43.17]}'"},{"lang":"Python","source":"import httpx\n\nresp = httpx.post(\n    \"https://api.prismadata.io/v1/location/batch/personal_income_static\",\n    json={\"1\": [-23.55, -46.63], \"2\": [-22.90, -43.17]},\n    headers={\"X-Apikey\": \"ak_xxxxxxxxxxxxxxxx\"},\n)\ndados = resp.json()"},{"lang":"Python SDK","source":"from prismadata import Client\n\nclient = Client(api_key=\"ak_xxxxxxxxxxxxxxxx\")\nresult = client.personal_income_static_batch(points={\n    \"p1\": [-23.55, -46.63],\n    \"p2\": [-22.90, -43.17],\n})\nprint(result)"},{"lang":"TypeScript SDK","source":"import { PrismaDataClient } from \"prismadata\";\n\nconst client = new PrismaDataClient({ apiKey: \"ak_xxxxxxxxxxxxxxxx\" });\nconst result = await client.incomeStaticBatch({\n  p1: [-23.55, -46.63],\n  p2: [-22.90, -43.17],\n});\nconsole.log(result);"}]}},"/location/batch/personal_income_pdf":{"post":{"tags":["Renda"],"summary":"Distribuição de renda em lote","description":"Endpoint batch para consulta de renda via PDF (Probability Density Function).\nRecebe múltiplos pontos, cada um com seus próprios parâmetros demográficos.","operationId":"batch_personal_income_pdf","requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/PdfBatchDict"}}},"required":true},"responses":{"200":{"description":"Successful Response","content":{"application/json":{"schema":{"additionalProperties":{"$ref":"#/components/schemas/PersonalIncomeDynamicResponse"},"type":"object","title":"BatchPdfResponse","description":"Resultados PDF por ponto. Chave = ID do ponto enviado na requisição."}}},"headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}}},"401":{"description":"Unauthorized - Missing or invalid API key","headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}}},"403":{"description":"Forbidden - Missing privileges to retrieve data","headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}}},"422":{"description":"Validation Error","headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/HTTPValidationError"}}}},"429":{"$ref":"#/components/responses/RateLimitExceeded"}},"x-codeSamples":[{"lang":"curl","source":"curl -X POST \"https://api.prismadata.io/v1/location/batch/personal_income_pdf\" \\\n  -H \"X-Apikey: ak_xxxxxxxxxxxxxxxx\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"1\": [-23.55, -46.63], \"2\": [-22.90, -43.17]}'"},{"lang":"Python","source":"import httpx\n\nresp = httpx.post(\n    \"https://api.prismadata.io/v1/location/batch/personal_income_pdf\",\n    json={\"1\": [-23.55, -46.63], \"2\": [-22.90, -43.17]},\n    headers={\"X-Apikey\": \"ak_xxxxxxxxxxxxxxxx\"},\n)\ndados = resp.json()"},{"lang":"Python SDK","source":"from prismadata import Client\n\nclient = Client(api_key=\"ak_xxxxxxxxxxxxxxxx\")\n# Coordenadas simples\nresult = client.personal_income_pdf_batch(points={\n    \"p1\": [-23.55, -46.63],\n    \"p2\": [-22.90, -43.17],\n})\nprint(result)\n\n# Com parametros demograficos\nresult = client.personal_income_pdf_batch_detailed(points={\n    \"p1\": {\"lat\": -23.55, \"lng\": -46.63, \"gender\": \"M\", \"age\": 50},\n    \"p2\": {\"lat\": -22.90, \"lng\": -43.17, \"gender\": \"F\", \"age\": 30},\n})\nprint(result)"},{"lang":"TypeScript SDK","source":"import { PrismaDataClient } from \"prismadata\";\n\nconst client = new PrismaDataClient({ apiKey: \"ak_xxxxxxxxxxxxxxxx\" });\n// Simple coordinates\nconst result = await client.incomePdfBatch({\n  p1: [-23.55, -46.63],\n  p2: [-22.90, -43.17],\n});\nconsole.log(result);\n\n// With per-point demographic parameters\nconst detailed = await client.incomePdfBatchDetailed({\n  p1: { lat: -23.55, lng: -46.63, gender: \"M\", age: 50 },\n  p2: { lat: -22.90, lng: -43.17, gender: \"F\", age: 30 },\n});\nconsole.log(detailed);"}]}}},"components":{"securitySchemes":{"X-Apikey":{"type":"apiKey","in":"header","name":"X-Apikey","description":"Token de acesso via header."},"api_key":{"type":"apiKey","in":"query","name":"api_key","description":"Token de acesso via query parameter."},"BearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"Token JWT obtido via POST /auth/token"}},"headers":{"X-RateLimit-Limit":{"description":"Número máximo de requisições permitidas por minuto para o usuário.","schema":{"type":"integer","example":60}},"X-RateLimit-Remaining":{"description":"Número de requisições restantes na janela de rate limit atual.","schema":{"type":"integer","example":57}},"X-RateLimit-Reset":{"description":"Unix timestamp (segundos) indicando quando a janela de rate limit será reiniciada.","schema":{"type":"integer","example":1738281600}}},"responses":{"RateLimitExceeded":{"description":"Too Many Requests - Rate limit ou quota excedidos.","headers":{"X-RateLimit-Limit":{"$ref":"#/components/headers/X-RateLimit-Limit"},"X-RateLimit-Remaining":{"$ref":"#/components/headers/X-RateLimit-Remaining"},"X-RateLimit-Reset":{"$ref":"#/components/headers/X-RateLimit-Reset"}},"content":{"text/plain":{"schema":{"type":"string"},"examples":{"rate_limit":{"summary":"Rate limit excedido","value":"rate limit exceeded"},"quota":{"summary":"Quota excedida","value":"limit exceeded: 1000 requests used, limit is 1000"}}}}}},"schemas":{"AtributosBooleanos":{"type":"string","enum":["true","false","1","0"],"title":"AtributosBooleanos","description":"Valores aceitos para parâmetros booleanos na query string."},"CoordPair":{"items":{"type":"number"},"type":"array","title":"CoordPair","description":"Par de coordenadas [lat, lng]."},"Genero":{"type":"string","enum":["M","F","m","f","male","female"],"title":"Genero","description":"Valores aceitos para o filtro de gênero da pessoa."},"HTTPValidationError":{"properties":{"detail":{"items":{"$ref":"#/components/schemas/ValidationError"},"type":"array","title":"Detail"}},"type":"object","title":"HTTPValidationError"},"PdfBatchDict":{"additionalProperties":{"anyOf":[{"$ref":"#/components/schemas/PdfPointInput"},{"$ref":"#/components/schemas/CoordPair"}]},"type":"object","title":"PdfBatchDict","description":"Dict de pontos para batch PDF. Aceita ambos os formatos:\n- {\"p1\": [lat, lng]}  (aggregator / sem params demográficos)\n- {\"p1\": {\"lat\": ..., \"lng\": ..., \"gender\": \"M\"}}  (com params)"},"PdfPointInput":{"properties":{"lat":{"type":"number","exclusiveMaximum":90.0,"exclusiveMinimum":-90.0,"title":"Lat","description":"Latitude"},"lng":{"type":"number","exclusiveMaximum":180.0,"exclusiveMinimum":-180.0,"title":"Lng","description":"Longitude"},"date_income":{"anyOf":[{"type":"string","format":"date"},{"type":"null"}],"title":"Date Income","description":"Data (YYYY-MM-DD), após 2022-01-01"},"gender":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Gender","description":"Gênero: M, F, male, female"},"age":{"anyOf":[{"type":"number","exclusiveMaximum":90.0,"exclusiveMinimum":15.0},{"type":"null"}],"title":"Age","description":"Idade (15-90)"},"is_responsible":{"anyOf":[{"type":"string"},{"type":"null"}],"title":"Is Responsible","description":"Responsável: true, false, 1, 0"},"income_compared":{"anyOf":[{"type":"number","exclusiveMinimum":0.0},{"type":"null"}],"title":"Income Compared","description":"Renda a ser comparada"}},"type":"object","required":["lat","lng"],"title":"PdfPointInput","description":"Ponto com parâmetros individuais para batch PDF."},"PersonalIncomeDynamicResponse":{"properties":{"prismadata__personal_income_pdf__qtde_pessoas":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Pdf  Qtde Pessoas","description":"Estimativa da quantidade de pessoas que se encontram na\n    vizinhança do ponto."},"prismadata__personal_income_pdf__qtde_pessoas_sem_renda":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Pdf  Qtde Pessoas Sem Renda","description":"Estimativa da quantidade de pessoas da região que não possuem\n    uma renda mensal."},"prismadata__personal_income_pdf__renda_comparada_cdf":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Pdf  Renda Comparada Cdf","description":"Quando uma renda a ser comparada é informada, indica quantas\n    pessoas (em termos percentuais) da região possuem uma renda inferior à renda\n    pesquisada.\n    Só está presente na resposta quando o parâmetro `income_compared` é\n    informado na requisição."},"prismadata__personal_income_pdf__renda_comparada_pdf":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Pdf  Renda Comparada Pdf","description":"Quando uma renda a ser comparada é informada, indica o quão\n    provável é alguém possuir exatamente aquela renda na região.\n    Só está presente na resposta quando o parâmetro `income_compared` é\n    informado na requisição."},"prismadata__personal_income_pdf__renda_comparada_z_score":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Pdf  Renda Comparada Z Score","description":"Quando uma renda a ser comparada é informada, indica o\n    desvio desta renda com a renda característica da região. Valores próximos à\n    zero indicam uma proximidade das rendas e valores com magnitude elevada\n    indicam valores díspares entre si. Valores de z-score positivos, indicam uma\n    renda comparada acima da renda característica da região e valores negativos\n    indicam valores abaixo da renda característica da região.\n    Só está presente na resposta quando o parâmetro `income_compared` é\n    informado na requisição."},"prismadata__personal_income_pdf__renda_media_pessoas":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Pdf  Renda Media Pessoas","description":"Indica a renda média entre as pessoas da região\n    considerando-se todas as pessoas, inclusive as pessoas sem renda, que tendem\n    a reduzir esse valor."},"prismadata__personal_income_pdf__renda_pessoas_com_renda_desvio_padrao":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Pdf  Renda Pessoas Com Renda Desvio Padrao","description":"Desvio padrão da PDF da renda da região, indicando o quão\n    diversa é a renda dos indivíduos na região. Valores menores indicam uma\n    renda mais homogênea e valores maiores uma renda mais variada. Este valor é\n    obtido considerando somente as pessoas que apresentam renda mensal na\n    região."},"prismadata__personal_income_pdf__renda_pessoas_com_renda_maxima":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Pdf  Renda Pessoas Com Renda Maxima","description":"Estimativa do valor de renda máxima mensal estimada na região.\n    Este valor é obtido considerando somente as pessoas que apresentam renda\n    mensal na região."},"prismadata__personal_income_pdf__renda_pessoas_com_renda_media":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Pdf  Renda Pessoas Com Renda Media","description":"Estimativa do valor de renda média mensal estimada na região.\n    Este valor é obtido considerando somente as pessoas que apresentam renda\n    mensal na região."},"prismadata__personal_income_pdf__renda_pessoas_com_renda_mediana":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Pdf  Renda Pessoas Com Renda Mediana","description":"Estimativa do valor que divide as pessoas entre o 50% mais\n    rico e o 50% mais pobre da região. Este valor é obtido considerando somente\n    as pessoas que apresentam renda mensal na região."},"prismadata__personal_income_pdf__renda_pessoas_com_renda_minima":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Pdf  Renda Pessoas Com Renda Minima","description":"Estimativa do valor de renda mínima mensal da região. Este\n    valor é obtido considerando somente as pessoas que apresentam renda mensal\n    na região."},"prismadata__personal_income_pdf__renda_pessoas_com_renda_primeiro_quartil":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Pdf  Renda Pessoas Com Renda Primeiro Quartil","description":"Estimativa do valor de renda mensal que divide o 25% mais\n    pobre e o 75% mais rico da região. Este valor é obtido considerando somente\n    as pessoas que apresentam renda mensal na região."},"prismadata__personal_income_pdf__renda_pessoas_com_renda_qtde":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Pdf  Renda Pessoas Com Renda Qtde","description":"Quantidade de pessoas que apresentam renda mensal."},"prismadata__personal_income_pdf__renda_pessoas_com_renda_terceiro_quartil":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Pdf  Renda Pessoas Com Renda Terceiro Quartil","description":"Estimativa do valor de renda mensal que divide o 75% mais\n    pobre e o 25% mais rico da região. Este valor é obtido considerando\n    somente as pessoas que apresentam renda mensal na região."},"prismadata__personal_income_pdf__renda_total":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Pdf  Renda Total","description":"Estimativa da renda nominal total, que representa a soma da\n    renda mensal de todos os indivíduos da região."},"prismadata__personal_income_pdf__renda_total_m2":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Pdf  Renda Total M2","description":"Estimativa da renda nominal total, que representa a soma da\n    renda mensal de todos os indivíduos da região dividida pela área da região\n    que se considera na modelagem. Valores maiores indicam não só uma região\n    rica, mas também uma região verticalizada, isto é, com alta concentração\n    espacial de renda."}},"type":"object","required":["prismadata__personal_income_pdf__qtde_pessoas","prismadata__personal_income_pdf__qtde_pessoas_sem_renda","prismadata__personal_income_pdf__renda_media_pessoas","prismadata__personal_income_pdf__renda_pessoas_com_renda_desvio_padrao","prismadata__personal_income_pdf__renda_pessoas_com_renda_maxima","prismadata__personal_income_pdf__renda_pessoas_com_renda_media","prismadata__personal_income_pdf__renda_pessoas_com_renda_mediana","prismadata__personal_income_pdf__renda_pessoas_com_renda_minima","prismadata__personal_income_pdf__renda_pessoas_com_renda_primeiro_quartil","prismadata__personal_income_pdf__renda_pessoas_com_renda_qtde","prismadata__personal_income_pdf__renda_pessoas_com_renda_terceiro_quartil","prismadata__personal_income_pdf__renda_total","prismadata__personal_income_pdf__renda_total_m2"],"title":"PersonalIncomeDynamicResponse","description":"Distribuição de renda estimada por modelo para a vizinhança da\ncoordenada consultada, com estatísticas agregadas e, quando\n`income_compared` é informado, a comparação com a renda pesquisada."},"PersonalIncomeStaticResponse":{"properties":{"prismadata__personal_income_static__faixa_sm_min":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Static  Faixa Sm Min","description":"Limite inferior da faixa salarial em múltiplos de\n    salário mínimo (SM). Exemplo: 5.0 significa 5 SM"},"prismadata__personal_income_static__faixa_sm_max":{"anyOf":[{"type":"number"},{"type":"null"}],"title":"Prismadata  Personal Income Static  Faixa Sm Max","description":"Limite superior da faixa salarial em múltiplos de\n    salário mínimo (SM). Null quando a faixa é aberta (acima de 10 SM)"},"prismadata__personal_income_static__percentil_br":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Prismadata  Personal Income Static  Percentil Br","description":"Dado o contexto do brasileiro, em qual percentil esta renda\n    se encontra. Valores maiores indicam que a região do ponto apresenta\n    pessoas com renda elevada dentro do contexto brasileiro."},"prismadata__personal_income_static__percentil_mun":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Prismadata  Personal Income Static  Percentil Mun","description":"O percentil da renda da região da coordenada geográfica em\n    relação ao município brasileiro em que o ponto se encontra. Valores elevados\n    indicam uma região com renda elevada naquele município."},"prismadata__personal_income_static__percentil_uf":{"anyOf":[{"type":"integer"},{"type":"null"}],"title":"Prismadata  Personal Income Static  Percentil Uf","description":"O percentil da renda da região da coordenada geográfica em\n    relação à unidade da federação brasileira (Estado) em que o ponto se\n    encontra. Novamente, valores maiores significam regiões de renda elevada\n    dentro do contexto da UF."}},"type":"object","required":["prismadata__personal_income_static__faixa_sm_min","prismadata__personal_income_static__faixa_sm_max","prismadata__personal_income_static__percentil_br","prismadata__personal_income_static__percentil_mun","prismadata__personal_income_static__percentil_uf"],"title":"PersonalIncomeStaticResponse","description":"Percentis de renda pré-calculados e faixa salarial do setor censitário\nque contém a coordenada consultada."},"ValidationError":{"properties":{"loc":{"items":{"anyOf":[{"type":"string"},{"type":"integer"}]},"type":"array","title":"Location"},"msg":{"type":"string","title":"Message"},"type":{"type":"string","title":"Error Type"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError"},"income_LocationDict":{"additionalProperties":{"$ref":"#/components/schemas/CoordPair"},"type":"object","title":"LocationDict","description":"Dict de pontos para batch static: {\"id\": [lat, lng]}."}}}}
