Conversor de data persa Jalali para gregoriana
Converta um ano, mês e dia explícitos do calendário persa Jalali, ou Hégira Solar, na data correspondente do calendário gregoriano.
Executar grátis
O conversor usa o ciclo aritmético persa de 2.820 anos e faz o cálculo diretamente, sem consultar um serviço remoto nem depender do relógio do dispositivo. O resultado traz uma data gregoriana clara em formato semelhante ao ISO e também os valores separados de ano, mês e dia, úteis para pessoas, scripts, importações, registros históricos e campos de data interoperáveis.
Informe uma data persa completa
Informe o ano, o mês e o dia da Hégira Solar persa como números inteiros separados. Os meses de 1 a 6 podem ter 31 dias, os meses de 7 a 11 podem ter 30 dias e o mês 12 tem 29 dias em um ano comum ou 30 em um ano bissexto aritmético. O conversor verifica essas regras antes de fazer o cálculo; portanto, uma data impossível é rejeitada em vez de ser transferida silenciosamente para outro mês. São aceitos anos de 1 a 9999. Use o ano exatamente como aparece no calendário persa, sem somar uma diferença gregoriana e sem informar horário ou abreviação de fuso. A saída apresenta a data gregoriana correspondente em uma sequência de ano, mês e dia semelhante ao padrão ISO, além de campos numéricos separados. Esses componentes facilitam o preenchimento de colunas de banco de dados, a criação de uma exibição localizada ou a comparação com outra data estruturada. A conversão representa um dia de calendário, e não um instante específico dentro desse dia.
Entenda o cálculo aritmético
O cálculo segue o modelo aritmético do calendário persa, baseado em um ciclo repetido de 2.820 anos. Primeiro, a data persa informada é convertida em um número de dia juliano, uma contagem contínua que funciona como ponte neutra entre calendários. Em seguida, esse número é decomposto pelos ciclos gregorianos de 400, 100, 4 e 1 anos para obter ano, mês e dia gregorianos. Todas as etapas usam aritmética inteira limitada e constantes fixas de calendário. A data atual, a localidade do sistema operacional, o fuso do navegador, consultas pela rede e tabelas históricas não participam do resultado. Assim, chamadas repetidas com a mesma entrada geram a mesma resposta na API e no navegador. O termo “aritmético” é relevante: algumas implementações do calendário persa usam observações astronômicas ou cálculos oficiais do equinócio, que podem divergir de um ciclo fixo em determinados anos distantes. Esta capacidade aplica sempre a convenção aritmética declarada, permitindo que você saiba qual modelo produziu o resultado e consiga reproduzi-lo de forma independente.
Use a resposta corretamente em sistemas e registros
Trate o valor retornado como uma conversão entre datas de calendários definidos, não como um timestamp Unix. Uma data isolada não identifica um instante até que sejam acrescentados horário, fuso e eventuais regras civis aplicáveis. Se o banco de dados armazena valores somente de data, a sequência em formato semelhante ao ISO geralmente é o campo mais direto para salvar. Caso o sistema exija um timestamp, acrescente o horário local desejado e o fuso em uma etapa separada e explícita, sem presumir meia-noite UTC. Essa distinção evita que a data apareça um dia antes ou depois quando o software aplica um deslocamento inesperado. O modelo aritmético é especialmente indicado para migrações reproduzíveis, fluxos de validação e transformações de arquivos porque não muda com novas observações nem com configurações regionais. Para procedimentos oficiais ou jurídicos atuais, confirme se a organização destinatária adota a mesma convenção, sobretudo quando sua norma indicar um calendário persa observacional. O preço da API é US$ 0,002 por solicitação, enquanto a versão do navegador executa localmente a mesma conversão pura.
Casos de uso
Normalizar registros importados
Converta colunas de datas persas em valores gregorianos estruturados antes de carregar registros em um sistema que padroniza datas gregorianas.
Conferir a data de um documento
Encontre a data gregoriana equivalente a uma data persa impressa em formulário, certificado, nota fiscal ou documento arquivado.
Criar lógica de calendário determinística
Use uma conversão aritmética fixa em testes, integrações e ferramentas offline nas quais entradas iguais sempre devem produzir resultados iguais.
Perguntas frequentes
Qual calendário persa este conversor utiliza?
Ele usa o calendário persa da Hégira Solar aritmético, com um ciclo repetido de 2.820 anos, e não um cálculo observacional do equinócio.
A conversão depende do meu fuso horário?
Não. Ela converte um dia de calendário em outro por aritmética fixa e não usa o relógio do dispositivo, o fuso local nem regras de horário de verão.
Como os anos bissextos persas são tratados?
Os anos bissextos são definidos pelo mesmo ciclo aritmético de 2.820 anos usado na conversão. Em um ano bissexto aritmético, o mês 12 pode ter 30 dias.
O que acontece se eu informar uma data impossível?
A solicitação retorna um erro de entrada inválida. O intervalo do mês e a quantidade permitida de dias no mês e ano informados são verificados antes da conversão.
O resultado é um timestamp?
Não. O resultado é uma data do calendário gregoriano. Acrescente separadamente um horário e um fuso explícito se sua aplicação precisar de um timestamp.
Quanto custa uma solicitação pela API?
O preço é US$ 0,002 por solicitação pela API. A mesma conversão determinística também fica disponível localmente no navegador.
Para desenvolvedores — acesso via API
Tudo nesta página está disponível via API. Esta seção é para equipes que querem integrar a ferramenta aos próprios sistemas; quem não precisa disso pode simplesmente usar a ferramenta acima.
Endpoint
Autenticação por token Bearer. Um único POST coloca a tarefa na fila; o resultado chega por webhook ou link assinado.
Chame do seu código
curl -X POST https://api.kit.forhosting.com/date/persian-to-gregorian \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"year":1400,"month":1,"day":1}'const res = await fetch("https://api.kit.forhosting.com/date/persian-to-gregorian", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"year": 1400,
"month": 1,
"day": 1
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/date/persian-to-gregorian",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"year": 1400,
"month": 1,
"day": 1
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/date/persian-to-gregorian", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"year":1400,"month":1,"day":1}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"year":1400,"month":1,"day":1}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/date/persian-to-gregorian", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Exemplo de requisição
{
"year": 1400,
"month": 1,
"day": 1
}Exemplo de resposta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "date.persian_to_gregorian",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}A API é assíncrona: cada chamada devolve um task_id na hora. Se preferir polling, consulte o status a até 1 requisição por segundo.
Preço
Preço publicado, sem tokens nem créditos escondidos. Tarefa que falha não é cobrada.
Erros
| HTTP | Código | O que significa |
|---|---|---|
401 | unauthorized | Token ausente ou inválido. Confira o header Authorization. |
402 | insufficient_balance | Saldo insuficiente para esta tarefa. Faça uma recarga e tente de novo. |
404 | unknown_type | Esse tipo de tarefa não existe. Confira o campo type no catálogo. |
429 | rate_limited | Muitas requisições em pouco tempo. Espere um instante e tente de novo. |