/api/astro/pdf/horoscope/25 créditosRelatório de horóscopo em PDF
Um horóscopo védico completo como um PDF pronto, em uma única chamada. O corpo da resposta É o PDF (`application/pdf`) — não há segunda requisição nem arquivo hospedado. Mais de quarenta páginas: dados de nascimento e panchang, posições planetárias com os senhores dos nakshatras, o mapa do lagna nos estilos norte-indiano e sul-indiano, o mapa da Lua, doze mapas divisionais, cúspides das casas, amizades planetárias, posicionamentos KP, Sarvashtakavarga mais uma página de Bhinnashtakavarga para cada graha, três sistemas de dasha com o período em curso aberto em subperíodos, os resultados de Kala Sarpa e Manglik, a linha do tempo completa da Sade Sati com suas passagens de Ardha Kantaka e Ashtama Shani, numerologia, recomendações de gemas, rudraksha e mantras, e uma leitura para cada um dos nove grahas. NÃO ARMAZENAMOS NADA. APIs de relatório costumam gravar o arquivo em um bucket e devolver um link, e com isso um mapa natal — um nome, uma hora de nascimento, um conjunto de previsões — fica numa URL pública enquanto o objeto existir. Aqui, os bytes voltam direto para você. Nada é gravado do nosso lado e não há link para mais ninguém encontrar. Se quiser uma cópia hospedada, salve você mesmo esses bytes, com a sua própria expiração e as suas próprias regras de acesso. WHITE LABEL. Tudo em `branding` é opcional e aparece na capa, no cabeçalho das páginas e no rodapé, para que o seu cliente veja o seu nome. Nada no documento traz o nosso. O MOMENTO DO NASCIMENTO. Envie `date_time` em ISO 8601 ou os campos separados `day`/`month`/`year`/`hour`/`minute` com `timezone_as_float`. Se você enviar as duas formas, a requisição é rejeitada, em vez de resolvida a seu favor: quando as duas divergem, não há forma segura de escolher uma, e o resultado seria um mapa errado apresentado com toda a convicção. Todos os valores são calculados pelos mesmos endpoints que esta API oferece — as posições da página 3 são exatamente o que /api/astro/planet-positions/ retorna. As seções falham de forma independente: se um cálculo não estiver definido para um mapa, a página correspondente informa isso e o restante do relatório é gerado normalmente. O cabeçalho de resposta `X-Report-Sections-Failed` informa quantas falharam, para que você distinga um relatório completo de um incompleto sem abri-lo. O tempo total típico fica abaixo de dois segundos.
https://api.occultapi.com/api/astro/pdf/horoscope/Autenticação
Envie sua chave no cabeçalho X-API-Key. A chave é uma credencial de servidor — nunca a coloque no JavaScript do navegador nem num app mobile.
X-API-Key: yt_live_a1b2c3d4_…
Content-Type: application/jsonCampos da requisição
| Campo | Tipo | Obrigatório | Observações |
|---|---|---|---|
| latitude | number (double) | obrigatório | Latitude do local, em graus decimais. Positivo é norte, negativo é sul. Exemplo: 26.9124 para Jaipur, 40.7128 para Nova York. Minutos e segundos não são aceitos - converta antes. min -90 · max 90 |
| longitude | number (double) | obrigatório | Longitude do local, em graus decimais. Positivo é leste, negativo é oeste. Exemplo: 75.7873 para Jaipur, -74.0060 para Nova York. Atenção ao sinal: sem o sinal de menos, Nova York vai parar na China. min -180 · max 180 |
| ayanamsa | string | opcional | |
| branding | object | opcional | Dados do revendedor impressos na capa, no cabeçalho e no rodapé. |
| chart_style | string | opcional | Em qual convenção o mapa natal é desenhado. Por padrão, as duas são incluídas. northsouthboth |
| date_time | string (date-time) | opcional | O momento a calcular, em ISO 8601. SEMPRE inclua um deslocamento ou um Z no final - um valor sem fuso horário é lido como Asia/Kolkata (UTC+05:30), não como UTC, e pode retornar o resultado do dia anterior com um 200. '2026-09-01T06:00:00Z' e '2026-09-01 06:00:00' são instantes diferentes e dão respostas diferentes. |
| day | integer | opcional | Dia do mês como número, de 1 a 31. min 1 · max 31 |
| gender | string | opcional | |
| hour | integer | opcional | Hora do nascimento no formato de 24 horas, 0-23. Hora local do local de nascimento. min 0 · max 23 |
| minute | integer | opcional | min 0 · max 59 |
| month | integer | opcional | Mês de nascimento como número, 1-12. Janeiro é 1. min 1 · max 12 |
| name | string | opcional | |
| place | string | opcional | |
| timezone_as_float | number (double) | opcional | Deslocamento UTC do local, em horas, como número decimal. Exemplo: 5.5 para a Índia (UTC+05:30), -5 para Nova York no inverno, 5.75 para o Nepal. Este valor NÃO é conferido com date_time: se os dois divergirem, você recebe uma resposta bem-sucedida para o momento errado. Por isso, tire os dois da mesma fonte. Use o deslocamento em vigor naquela data, não o de hoje: quem nasceu no verão, em um país com horário de verão, precisa do deslocamento de verão. min -12 · max 14 |
| year | integer | opcional | Ano de nascimento como número, por exemplo 1990. Quatro dígitos. min 1800 · max 2200 |
Exemplo de requisição
curl -X POST https://api.occultapi.com/api/astro/pdf/horoscope/ \
-H "X-API-Key: $OCCULT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name":"Ajeet Kanojia","gender":"male","date_time":"1985-02-23T05:45:00+05:30","latitude":20.8833,"longitude":76.2,"timezone_as_float":5.5,"place":"Malkapur, Maharashtra, India","chart_style":"both","branding":{"company_name":"Acme Astrology","company_info":"Vedic reports since 2011.","company_email":"hello@acme.example","company_mobile":"+91 90000 00000","domain_url":"https://acme.example","footer_link":"acme.example"}}'Resposta
Erros
Erros de consumo de créditos retornam { "error": "…", "message": "<code>", "is_error": true }. Mostre error para o usuário e use message para decidir o que fazer no código. Consulte a referência de erros.