Conversor de duração ISO 8601
Converta a notação de duração ISO 8601 (ex.: PT1H30M) em segundos totais e vice-versa. Útil para interpretar formatos usados pela API do YouTube, tempos limite da AWS e feeds RSS de podcasts.
Exemplos comuns de duração ISO 8601
Uma duração ISO 8601 começa com "P", seguido de anos/meses/dias, e depois "T" seguido de horas/minutos/segundos. Abaixo estão exemplos comuns e os segundos que representam.
| Notação | Total de segundos | Observação |
|---|---|---|
| PT30S | 30 | Um valor típico de tempo limite curto, como 30 segundos |
| PT1H30M | 5,400 | 1 hora e 30 minutos — forma comum de expressar a duração de um filme ou de um vídeo do YouTube |
| P1D | 86,400 | 1 dia (24 horas) — frequentemente usado para períodos de retenção de logs ou expiração de cache |
| P3Y6M4DT12H30M5S | 110,842,205 | Um exemplo combinado equivalente a 3 anos, 6 meses, 4 dias, 12 horas, 30 minutos e 5 segundos (anos/meses usam a aproximação de 365,25 dias) |
O que é a notação de duração ISO 8601
A notação de duração ISO 8601 é um padrão internacional que expressa o "comprimento" entre dois pontos no tempo em uma única string, como "P3Y6M4DT12H30M5S". Enquanto uma data-hora indica um instante específico ("quando"), uma duração expressa uma diferença ("quanto tempo"), por isso existe uma notação dedicada que começa com "P", separada dos formatos de timestamp.
Desenvolvedores encontram essa notação com frequência: a API de Dados do YouTube informa assim a duração dos vídeos, as APIs da AWS e do Google Cloud a usam em configurações de tempo limite e expiração, e feeds RSS de podcasts a empregam para a duração dos episódios. Esta ferramenta converte instantaneamente entre strings de duração e segundos totais, para você conferir exatamente quanto tempo um valor representa.
Como converter durações ISO 8601 e segundos
- Cole uma string de duração para convertê-la em segundos Digite uma string de duração ISO 8601 como "PT1H30M" na caixa de texto superior, e o total em segundos e um detalhamento por unidade aparecem automaticamente.
- Experimente o exemplo Clique em "Inserir exemplo" para carregar um caso que combina anos, meses, dias, horas, minutos e segundos, e ver a conversão em ação imediatamente.
- Informe segundos para convertê-los em uma string de duração Digite o número total de segundos que deseja converter na caixa de texto inferior, e a string de duração ISO 8601 correspondente é gerada.
- Escolha um modo de conversão Selecione "anos/meses/dias" para uma notação compacta e legível, ou "apenas dias/horas/minutos/segundos" para um resultado exato sem aproximação de calendário.
- Copie o resultado Copie o total de segundos, minutos, horas ou dias exibido, ou a string de duração gerada, diretamente para sua requisição de API ou arquivo de configuração.
Dicas para aproveitar melhor
- Durações que incluem anos ou meses não têm, na realidade, um número fixo de segundos, então esta ferramenta usa uma aproximação fixa: 1 ano = 365,25 dias e 1 mês = 30,44 dias.
- Ao gerar uma string de duração a partir de segundos, escolha "apenas dias/horas/minutos/segundos" para evitar totalmente a aproximação de anos/meses e obter um resultado exato e independente do calendário.
- A API de Dados do YouTube retorna a duração do vídeo no campo contentDetails.duration usando notação ISO 8601, então você pode colá-la diretamente aqui para obter o total em segundos.
- Serviços em nuvem como AWS Lambda e API Gateway às vezes usam notação de duração ISO 8601 para configurar tempos limite, o que torna esta ferramenta útil para verificar esses valores.
- Feeds RSS de podcasts às vezes usam o formato de duração ISO 8601 na tag itunes:duration, além do formato hh:mm:ss mais comum.
Onde a conversão de duração ISO 8601 é útil
Analisar respostas da API de Dados do YouTube
Cole um valor como "PT4M13S" de contentDetails.duration para ver instantaneamente quantos minutos e segundos dura um vídeo.
Depurar configurações da AWS e de serviços em nuvem
Verifique a quantos segundos ou horas equivale, na prática, uma notação de duração em um tempo limite do Step Functions ou do CloudFormation.
Conferir a duração de episódios em feeds RSS de podcasts
Quando a tag itunes:duration usa formato ISO 8601, compare-a com a notação hh:mm:ss mais comum para confirmar a duração.
Integração com APIs de calendário e agendamento
Parta de um número de segundos para montar o intervalo de recorrência ou a duração do lembrete exigidos por APIs como a do Google Agenda.
Criar casos de teste para um analisador próprio
Ao desenvolver seu próprio analisador de durações, use esta ferramenta para verificar o número correto de segundos de strings conhecidas e usá-lo como valor esperado nos testes.
Glossário da duração ISO 8601
- ISO 8601
- Um padrão internacional que define como representar datas, horas e durações. Além da notação de datas como "2026-09-16", também define a notação de duração que esta ferramenta trata.
- Duração
- Um valor que representa o intervalo de tempo entre dois pontos. Diferente de uma data-hora, que aponta para um instante específico, uma duração carrega a informação de quanto tempo se passa.
- Notação PnYnMnDTnHnMnS
- O formato básico das strings de duração ISO 8601: anos (A), meses (M) e dias (D) após o "P", seguidos de horas (H), minutos (M) e segundos (S) após o "T", incluindo apenas as unidades necessárias.
- Timestamp
- Um valor que representa um instante específico. Ao contrário de uma duração (uma diferença), um timestamp expressa uma posição absoluta — "quando" algo ocorreu.
- RFC 3339
- Uma especificação, baseada na ISO 8601, para expressar datas e horas na internet. Ela define a notação de timestamp, mas não a de duração, que permanece exclusiva da ISO 8601.
- Notação de semanas (PnW)
- Uma abreviação como "P2W" que expressa uma duração apenas em semanas. Segundo a ISO 8601, essa forma independente não pode ser combinada com componentes de ano/mês/dia ou com a parte de tempo.
Perguntas frequentes
Curiosidade — Por que o mundo da computação tem um formato dedicado para "durações"?
A ISO 8601 é mais conhecida como o padrão internacional para representar datas e horas, mas o mesmo padrão também define uma notação separada para "durações" — o intervalo de tempo entre dois pontos, em vez de um único instante. Uma data-hora responde "quando", enquanto uma duração responde "por quanto tempo", e embora pareçam semelhantes à primeira vista, representam tipos de informação fundamentalmente diferentes. A notação dedicada iniciada por "P" existe justamente para manter essa distinção clara.
Um dos motivos pelos quais a notação de duração é tão útil na prática é que ela evita erros de incompatibilidade de unidades ao trocar dados entre sistemas. Se uma resposta de API simplesmente retornasse o número "30", quem a recebesse teria que consultar a documentação para saber se isso significa segundos ou minutos. Com "PT30S", o valor e sua unidade viajam juntos em uma única string, de modo que um analisador correto nunca pode interpretá-la incorretamente.
É exatamente por isso que a API de Dados do YouTube retorna a duração do vídeo em formato ISO 8601: uma string como "PT4M13S" significa, sem ambiguidade, um vídeo de 4 minutos e 13 segundos. Plataformas de nuvem como AWS e Google Cloud às vezes adotam o mesmo formato para configurações de tempo limite e expiração, então, se você notar essa notação em um arquivo de configuração YAML ou em uma resposta JSON, passá-la por esta ferramenta para ver o número equivalente de segundos pode ajudar a visualizar melhor o valor.
Ao mesmo tempo, o padrão tem uma peculiaridade interessante: durações que incluem anos ou meses não têm um comprimento absoluto fixo. O mesmo "P1Y" pode representar 365 ou 366 dias reais, dependendo se abrange um ano bissexto. No fim das contas, é exatamente por isso que esta ferramenta precisa recorrer a uma aproximação sempre que uma conversão envolve anos ou meses.