| data.cabin | string | Cabine enviada para o endpoint Smiles. | ALL |
| data.cheapestOffer.airline | string | null | Companhia aérea ou GDS associado à oferta. | G3 |
| data.cheapestOffer.arrivalAirport | string | null | Aeroporto de chegada. | GIG |
| data.cheapestOffer.arrivalTime | string | null | Data/hora de chegada. | 2026-11-09T10:10:00 |
| data.cheapestOffer.baggage | object | null | Franquia de bagagem despachada informada na busca para a oferta; null quando ausente. Não é uma validação por opção tarifária ou por passageiro: a tarifa escolhida e benefícios pessoais podem alterar a franquia. Peso, dimensões, bagagem de mão e regras completas não são retornados. | {"free":false,"quantity":0} |
| data.cheapestOffer.baggage.free | boolean | null | Indicação de bagagem gratuita fornecida pela Smiles. false indica explicitamente bagagem não gratuita na oferta; null significa desconhecido. Não inclui validação de benefícios pessoais do Clube/categoria. | false |
| data.cheapestOffer.baggage.quantity | number | null | Quantidade de volumes de bagagem despachada informada para a oferta. Zero é uma quantidade explícita; null significa ausente ou desconhecida. Não representa peso em kg. | 0 |
| data.cheapestOffer.cabin | string | null | Cabine associada à oferta. | ECONOMIC |
| data.cheapestOffer.departureAirport | string | null | Aeroporto de partida. | GRU |
| data.cheapestOffer.departureTime | string | null | Data/hora de partida. | 2026-11-09T09:00:00 |
| data.cheapestOffer.fareOptions[].classOfService | string | null | Classe de reserva quando informada. Não substitui as regras tarifárias completas. | U |
| data.cheapestOffer.fareOptions[].costTax | number | string | null | Taxa adicional em reais (BRL), separada de money, quando informada. null significa taxa desconhecida, não zero. Não garante todas as cobranças da emissão, especialmente em companhias parceiras; confirme o total na Smiles. | 39.9 |
| data.cheapestOffer.fareOptions[].fareType | string | null | Modalidade tarifária, como SMILES, SMILES_CLUB, SMILES_MONEY, SMILES_MONEY_CLUB ou MONEY. Tarifas de Clube/categoria dependem de elegibilidade na emissão; a API não autentica a conta Smiles. | SMILES_CLUB |
| data.cheapestOffer.fareOptions[].miles | number | string | null | Quantidade de milhas da opção, por passageiro e trecho da oferta; não é o total da reserva. Crianças e bebês podem ter condições específicas. | 12500 |
| data.cheapestOffer.fareOptions[].money | number | string | null | Componente da tarifa em reais (BRL), não em centavos. Quando há milhas, é a parcela em dinheiro do Smiles & Money. Não inclui costTax; some os dois campos conhecidos para estimar o componente em dinheiro. Não é o total da reserva. | 0 |
| data.cheapestOffer.fareOptions[].productClass | string | null | Código do produto tarifário quando informado. Não substitui as regras completas de bagagem, alteração ou cancelamento. | PROMO |
| data.cheapestOffer.fareOptions[].uid | string | null | Identificador da opção tarifária retornado pela Smiles. | fare-uid-1 |
| data.cheapestOffer.fareType | string | null | Tipo da oferta/trecho retornado pela Smiles, como SEGMENT_1 ou SEGMENT_2. Para a modalidade de pagamento e elegibilidade, leia fareOptions[].fareType. | SEGMENT_1 |
| data.cheapestOffer.flightNumbers | string[] | Números dos voos, sem prefixo da companhia, na ordem de legs. Array vazio quando não informados; use legs para associar cada número à companhia e à conexão. | ["1001"] |
| data.cheapestOffer.legs | array | Voos que compõem o itinerário da oferta, na ordem retornada pela Smiles. Array vazio quando não informados. | [{"flightNumber":"1001","marketingAirline":"G3","operatingAirline":"G3","cabin":"ECONOMIC","departureAirport":"GRU","departureTime":"2026-11-09T09:00:00","arrivalAirport":"GIG","arrivalTime":"2026-11-09T10:10:00"}] |
| data.cheapestOffer.legs[].arrivalAirport | string | null | Código IATA do aeroporto de chegada deste voo. | GIG |
| data.cheapestOffer.legs[].arrivalTime | string | null | Data/hora de chegada deste voo, conforme retornada pela Smiles. Não presume UTC quando não há offset. | 2026-11-09T10:10:00 |
| data.cheapestOffer.legs[].cabin | string | null | Cabine deste voo, quando informada. | ECONOMIC |
| data.cheapestOffer.legs[].departureAirport | string | null | Código IATA do aeroporto de partida deste voo. | GRU |
| data.cheapestOffer.legs[].departureTime | string | null | Data/hora de partida deste voo, conforme retornada pela Smiles. Não presume UTC quando não há offset. | 2026-11-09T09:00:00 |
| data.cheapestOffer.legs[].flightNumber | string | null | Número do voo sem prefixo da companhia. Preserva zeros à esquerda quando recebidos; null quando não informado. | 1001 |
| data.cheapestOffer.legs[].marketingAirline | string | null | Código da companhia que comercializa este voo. Pode diferir da operadora em codeshare. | G3 |
| data.cheapestOffer.legs[].operatingAirline | string | null | Código da companhia que opera este voo, quando informado pela Smiles. | G3 |
| data.cheapestOffer.position | number | Posição da oferta mais barata no conjunto normalizado. | 1 |
| data.cheapestOffer.priceHint | number | null | Indicador numérico usado para ordenar ofertas em milhas. Não representa custo total em reais e não soma money ou costTax. | 12500 |
| data.cheapestOffer.pricingUid | string | null | Identificador de precificação da oferta. | pricing-uid-1 |
| data.cheapestOffer.sourceGDS | string | null | Fonte GDS retornada pelo upstream. | G3 |
| data.cheapestOffer.stops | number | string | null | Quantidade de escalas quando disponível. | 0 |
| data.cheapestOffer.uid | string | null | Identificador do voo/oferta quando retornado pela Smiles. | flight-uid-1 |
| data.departureDate | string (YYYY-MM-DD) | Data de ida usada na busca. | 2026-11-09 |
| data.extractedAt | string (iso datetime) | Data e hora em que a resposta foi normalizada. | 2026-10-11T15:00:00.000Z |
| data.from | string | Código IATA de origem. | GRU |
| data.listedOffers | number | Quantidade de ofertas incluídas no array offers. | 2 |
| data.numAdults | number | Quantidade de adultos enviada à busca. Os preços das opções não são multiplicados pelo número de passageiros pela API. | 1 |
| data.numChildren | number | Quantidade de crianças. | 0 |
| data.numInfants | number | Quantidade de bebês de colo. | 0 |
| data.offers[].airline | string | null | Companhia aérea ou GDS associado à oferta. | G3 |
| data.offers[].arrivalAirport | string | null | Aeroporto de chegada. | GIG |
| data.offers[].arrivalTime | string | null | Data/hora de chegada. | 2026-11-09T10:10:00 |
| data.offers[].baggage | object | null | Franquia de bagagem despachada informada na busca para a oferta; null quando ausente. Não é uma validação por opção tarifária ou por passageiro: a tarifa escolhida e benefícios pessoais podem alterar a franquia. Peso, dimensões, bagagem de mão e regras completas não são retornados. | {"free":false,"quantity":0} |
| data.offers[].baggage.free | boolean | null | Indicação de bagagem gratuita fornecida pela Smiles. false indica explicitamente bagagem não gratuita na oferta; null significa desconhecido. Não inclui validação de benefícios pessoais do Clube/categoria. | false |
| data.offers[].baggage.quantity | number | null | Quantidade de volumes de bagagem despachada informada para a oferta. Zero é uma quantidade explícita; null significa ausente ou desconhecida. Não representa peso em kg. | 0 |
| data.offers[].cabin | string | null | Cabine associada à oferta. | ECONOMIC |
| data.offers[].departureAirport | string | null | Aeroporto de partida. | GRU |
| data.offers[].departureTime | string | null | Data/hora de partida. | 2026-11-09T09:00:00 |
| data.offers[].fareOptions[].classOfService | string | null | Classe de reserva quando informada. Não substitui as regras tarifárias completas. | U |
| data.offers[].fareOptions[].costTax | number | string | null | Taxa adicional em reais (BRL), separada de money, quando informada. null significa taxa desconhecida, não zero. Não garante todas as cobranças da emissão, especialmente em companhias parceiras; confirme o total na Smiles. | 39.9 |
| data.offers[].fareOptions[].fareType | string | null | Modalidade tarifária, como SMILES, SMILES_CLUB, SMILES_MONEY, SMILES_MONEY_CLUB ou MONEY. Tarifas de Clube/categoria dependem de elegibilidade na emissão; a API não autentica a conta Smiles. | SMILES_CLUB |
| data.offers[].fareOptions[].miles | number | string | null | Quantidade de milhas da opção, por passageiro e trecho da oferta; não é o total da reserva. Crianças e bebês podem ter condições específicas. | 12500 |
| data.offers[].fareOptions[].money | number | string | null | Componente da tarifa em reais (BRL), não em centavos. Quando há milhas, é a parcela em dinheiro do Smiles & Money. Não inclui costTax; some os dois campos conhecidos para estimar o componente em dinheiro. Não é o total da reserva. | 0 |
| data.offers[].fareOptions[].productClass | string | null | Código do produto tarifário quando informado. Não substitui as regras completas de bagagem, alteração ou cancelamento. | PROMO |
| data.offers[].fareOptions[].uid | string | null | Identificador da opção tarifária retornado pela Smiles. | fare-uid-1 |
| data.offers[].fareType | string | null | Tipo da oferta/trecho retornado pela Smiles, como SEGMENT_1 ou SEGMENT_2. Para a modalidade de pagamento e elegibilidade, leia fareOptions[].fareType. | SEGMENT_1 |
| data.offers[].flightNumbers | string[] | Números dos voos, sem prefixo da companhia, na ordem de legs. Array vazio quando não informados; use legs para associar cada número à companhia e à conexão. | ["1001"] |
| data.offers[].legs | array | Voos que compõem o itinerário da oferta, na ordem retornada pela Smiles. Array vazio quando não informados. | [{"flightNumber":"1001","marketingAirline":"G3","operatingAirline":"G3","cabin":"ECONOMIC","departureAirport":"GRU","departureTime":"2026-11-09T09:00:00","arrivalAirport":"GIG","arrivalTime":"2026-11-09T10:10:00"}] |
| data.offers[].legs[].arrivalAirport | string | null | Código IATA do aeroporto de chegada deste voo. | GIG |
| data.offers[].legs[].arrivalTime | string | null | Data/hora de chegada deste voo, conforme retornada pela Smiles. Não presume UTC quando não há offset. | 2026-11-09T10:10:00 |
| data.offers[].legs[].cabin | string | null | Cabine deste voo, quando informada. | ECONOMIC |
| data.offers[].legs[].departureAirport | string | null | Código IATA do aeroporto de partida deste voo. | GRU |
| data.offers[].legs[].departureTime | string | null | Data/hora de partida deste voo, conforme retornada pela Smiles. Não presume UTC quando não há offset. | 2026-11-09T09:00:00 |
| data.offers[].legs[].flightNumber | string | null | Número do voo sem prefixo da companhia. Preserva zeros à esquerda quando recebidos; null quando não informado. | 1001 |
| data.offers[].legs[].marketingAirline | string | null | Código da companhia que comercializa este voo. Pode diferir da operadora em codeshare. | G3 |
| data.offers[].legs[].operatingAirline | string | null | Código da companhia que opera este voo, quando informado pela Smiles. | G3 |
| data.offers[].position | number | Posição da oferta no array normalizado. | 1 |
| data.offers[].priceHint | number | null | Indicador numérico usado para ordenar ofertas em milhas. Não representa custo total em reais e não soma money ou costTax. | 12500 |
| data.offers[].pricingUid | string | null | Identificador de precificação da oferta. | pricing-uid-1 |
| data.offers[].sourceGDS | string | null | Fonte GDS retornada pelo upstream. | G3 |
| data.offers[].stops | number | string | null | Quantidade de escalas quando disponível. | 0 |
| data.offers[].uid | string | null | Identificador do voo/oferta quando retornado pela Smiles. | flight-uid-1 |
| data.parser | "1.0.0" | Versão estável do formato de resposta da API. | 1.0.0 |
| data.requestUrl | string | Mesmo valor de `data.url`; nunca expõe o endpoint interno consultado. | https://www.smiles.com.br/passagens-aereas?from=GRU&to=GIG&departureDate=2026-11-09&returnDate=2026-11-16&numAdults=1&numChildren=0&numInfants=0&cabin=ALL |
| data.returnDate | string | null | Data de volta usada na busca quando informada. | 2026-11-16 |
| data.runtimeEnv | string | Ambiente Smiles resolvido para a busca. | green |
| data.searchType | string (ONE_WAY | ROUND_TRIP) | Indica somente ida ou ida e volta. Cada oferta pertence a um trecho/itinerário; não representa um pacote com o total de ida e volta. | ROUND_TRIP |
| data.source | string | Fonte consultada. | smiles.com.br |
| data.to | string | Código IATA de destino. | GIG |
| data.totalOffers | number | Quantidade de ofertas normalizadas. | 2 |
| data.type | string | Tipo de extração. | plp |
| data.url | string | URL canônica criada a partir dos parâmetros estruturados. | https://www.smiles.com.br/passagens-aereas?from=GRU&to=GIG&departureDate=2026-11-09&returnDate=2026-11-16&numAdults=1&numChildren=0&numInfants=0&cabin=ALL |
| executionId | string (uuid) | Identificador da execução assíncrona. | 99999999-2222-4222-8222-999999999999 |
| requestId | string (uuid) | Identificador da requisição de extração. | 99999999-1111-4111-8111-999999999999 |