Reserva de ônibus

Casos de uso

Os casos de uso a seguir mostram exemplos comuns de uso do esquema BusReservation. Use esses exemplos para garantir que a marcação seja estruturada corretamente.

Confirmação básica de reserva

Incorpore a marcação a seguir ao enviar uma confirmação de reserva.

O Google app exibirá os detalhes da reserva no dia da viagem e notificará o usuário sobre o horário de saída para o ponto de ônibus a tempo (considerando o meio de transporte, trânsito etc.). Se você fornecer um URL de check-in, como no exemplo abaixo, o Google app vai mostrar isso ao usuário 24 horas antes da viagem.

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "BusReservation",
  "reservationNumber": "123456",
  "underName": {
    "@type": "Person",
    "name": "John Smith"
  },
  "reservationStatus": "http://schema.org/ReservationConfirmed",
  "reservationFor": {
    "@type": "BusTrip",
    "busCompany": {
      "@type": "Organization",
      "name": "Bolt NYC"
    },
    "departureBusStop": {
      "@type": "BusStop",
      "name": "Port Authority, NYC"
    },
    "departureTime": "2017-01-04T12:30:00-05:00",
    "arrivalBusStop": {
      "@type": "BusStop",
      "name": "Boston South Station"
    },
    "arrivalTime": "2017-01-04T17:10:00-05:00"
  }
}
</script>

Microdados

<div itemscope itemtype="http://schema.org/BusReservation">
  <meta itemprop="reservationNumber" content="123456"/>
  <div itemprop="underName" itemscope itemtype="http://schema.org/Person">
    <meta itemprop="name" content="John Smith"/>
  </div>
  <link itemprop="reservationStatus" href="http://schema.org/ReservationConfirmed"/>
  <div itemprop="reservationFor" itemscope itemtype="http://schema.org/BusTrip">
    <div itemprop="busCompany" itemscope itemtype="http://schema.org/Organization">
      <meta itemprop="name" content="Bolt NYC"/>
    </div>
    <div itemprop="departureBusStop" itemscope itemtype="http://schema.org/BusStop">
      <meta itemprop="name" content="Port Authority, NYC"/>
    </div>
    <meta itemprop="departureTime" content="2017-01-04T12:30:00-05:00"/>
    <div itemprop="arrivalBusStop" itemscope itemtype="http://schema.org/BusStop">
      <meta itemprop="name" content="Boston South Station"/>
    </div>
    <meta itemprop="arrivalTime" content="2017-01-04T17:10:00-05:00"/>
  </div>
</div>

Cartão de embarque e bilhete

Além de uma confirmação de reserva, é possível acionar um cartão de confirmação do cartão de confirmação em um e-mail separado.

Os cards de confirmação podem ajudar o usuário a chegar a um ponto de ônibus a tempo e exibir o ingresso durante a jornada. Para isso, alguns campos adicionais precisam ser incluídos na marcação. Se houver mais campos obrigatórios para embarcar, inclua-os no campo additionalTicketText.

Para ingressos sem assentos reservados, estes campos são: numSeats, ticketNumber e ticketToken

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "BusReservation",
  "reservationNumber": "123456",
  "underName": {
    "@type": "Person",
    "name": "John Smith"
  },
  "reservationStatus": "http://schema.org/ReservationConfirmed",
  "reservationFor": {
    "@type": "BusTrip",
    "busCompany": "Bolt NYC",
    "departureBusStop": {
      "@type": "BusStop",
      "name": "Port Authority, NYC"
    },
    "departureTime": "2017-01-04T12:30:00-05:00",
    "arrivalBusStop": {
      "@type": "BusStop",
      "name": "Boston South Station"
    },
    "arrivalTime": "2017-01-04T17:10:00-05:00"
  },
  "reservedTicket": {
    "@type": "Ticket",
    "underName": "John Smith",
    "ticketNumber": "123XYZ",
    "ticketToken": "aztecCode:AB34",
    "additionalTicketText": "We recommend that you arrive at the station at least 30 minutes prior to your scheduled departure. Allow additional time if you need help with baggage or tickets."
  }
}
</script>

Microdados

<div itemscope itemtype="http://schema.org/BusReservation">
  <meta itemprop="reservationNumber" content="123456"/>
  <div itemprop="underName" itemscope itemtype="http://schema.org/Person">
    <meta itemprop="name" content="John Smith"/>
  </div>
  <link itemprop="reservationStatus" href="http://schema.org/ReservationConfirmed"/>
  <div itemprop="reservationFor" itemscope itemtype="http://schema.org/BusTrip">
    <meta itemprop="busCompany" content="Bolt NYC"/>
    <div itemprop="departureBusStop" itemscope itemtype="http://schema.org/BusStop">
      <meta itemprop="name" content="Port Authority, NYC"/>
    </div>
    <meta itemprop="departureTime" content="2017-01-04T12:30:00-05:00"/>
    <div itemprop="arrivalBusStop" itemscope itemtype="http://schema.org/BusStop">
      <meta itemprop="name" content="Boston South Station"/>
    </div>
    <meta itemprop="arrivalTime" content="2017-01-04T17:10:00-05:00"/>
  </div>
  <div itemprop="reservedTicket" itemscope itemtype="http://schema.org/Ticket">
    <meta itemprop="underName" content="John Smith"/>
    <meta itemprop="ticketNumber" content="123XYZ"/>
    <meta itemprop="ticketToken" content="aztecCode:AB34"/>
    <meta itemprop="additionalTicketText" content="We recommend that you arrive at the station at least 30 minutes prior to your scheduled departure. Allow additional time if you need help with baggage or tickets."/>
  </div>
</div>

Para ingressos com área reservada, estes campos são: seatNumber, seatingType, ticketNumber e ticketToken

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "BusReservation",
  "reservationNumber": "123456",
  "underName": {
    "@type": "Person",
    "name": "John Smith"
  },
  "reservationStatus": "http://schema.org/ReservationConfirmed",
  "reservationFor": {
    "@type": "BusTrip",
    "busCompany": "Bolt NYC",
    "departureBusStop": {
      "@type": "BusStop",
      "name": "Port Authority, NYC"
    },
    "departureTime": "2017-01-04T12:30:00-05:00",
    "arrivalBusStop": {
      "@type": "BusStop",
      "name": "Boston South Station"
    },
    "arrivalTime": "2017-01-04T17:10:00-05:00"
  },
  "reservedTicket": {
    "@type": "Ticket",
    "underName": "John Smith",
    "ticketedSeat": {
      "@type": "Seat",
      "seatNumber": "27B",
      "seatingType": "Coach"
    },
    "ticketNumber": "123XYZ",
    "ticketToken": "aztecCode:AB34",
    "additionalTicketText": "We recommend that you arrive at the station at least 30 minutes prior to your scheduled departure. Allow additional time if you need help with baggage or tickets."
  }
}
</script>

Microdados

<div itemscope itemtype="http://schema.org/BusReservation">
  <meta itemprop="reservationNumber" content="123456"/>
  <div itemprop="underName" itemscope itemtype="http://schema.org/Person">
    <meta itemprop="name" content="John Smith"/>
  </div>
  <link itemprop="reservationStatus" href="http://schema.org/ReservationConfirmed"/>
  <div itemprop="reservationFor" itemscope itemtype="http://schema.org/BusTrip">
    <meta itemprop="busCompany" content="Bolt NYC"/>
    <div itemprop="departureBusStop" itemscope itemtype="http://schema.org/BusStop">
      <meta itemprop="name" content="Port Authority, NYC"/>
    </div>
    <meta itemprop="departureTime" content="2017-01-04T12:30:00-05:00"/>
    <div itemprop="arrivalBusStop" itemscope itemtype="http://schema.org/BusStop">
      <meta itemprop="name" content="Boston South Station"/>
    </div>
    <meta itemprop="arrivalTime" content="2017-01-04T17:10:00-05:00"/>
  </div>
  <div itemprop="reservedTicket" itemscope itemtype="http://schema.org/Ticket">
    <meta itemprop="underName" content="John Smith"/>
    <div itemprop="ticketedSeat" itemscope itemtype="http://schema.org/Seat">
      <meta itemprop="seatNumber" content="27B"/>
      <meta itemprop="seatingType" content="Coach"/>
    </div>
    <meta itemprop="ticketNumber" content="123XYZ"/>
    <meta itemprop="ticketToken" content="aztecCode:AB34"/>
    <meta itemprop="additionalTicketText" content="We recommend that you arrive at the station at least 30 minutes prior to your scheduled departure. Allow additional time if you need help with baggage or tickets."/>
  </div>
</div>

Exemplo com todos os campos compatíveis

Como referência, veja um exemplo com todos os campos compatíveis preenchidos:

JSON-LD

<script type="application/ld+json">
{
  "@context": "http://schema.org",
  "@type": "BusReservation",
  "reservationNumber": "123456",
  "url": "http://boltbus.com/view/123456",
  "underName": {
    "@type": "Person",
    "name": "John Smith",
    "email": "john@mail.com"
  },
  "programMembership": {
    "@type": "ProgramMembership",
    "memberNumber": "12345",
    "program": "STA"
  },
  "bookingAgent": {
    "@type": "Organization",
    "name": "Bolt Bus NYC",
    "url": "http://boltbus.com/"
  },
  "bookingTime": "2013-01-14T13:05:00-05:00",
  "modifiedTime": "2013-03-14T13:05:00-05:00",
  "confirmReservationUrl": "http://boltbus.com/confirm?id=123456",
  "cancelReservationUrl": "http://boltbus.com/cancel?id=123456",
  "modifyReservationUrl": "http://boltbus.com/edit?id=123456",
  "checkinUrl": "http://boltbus.com/checkin?id=AB3XY2",
  "reservationStatus": "http://schema.org/ReservationConfirmed",
  "reservationFor": {
    "@type": "BusTrip",
    "name": "?",
    "busNumber": "63",
    "busName": "Bolt Bus NY:Boston",
    "busCompany": {
      "@type": "Organization",
      "name": "Bolt NYC"
    },
    "departureBusStop": {
      "@type": "BusStop",
      "name": "Port Authority, NYC",
      "address": {
        "@type": "PostalAddress",
        "streetAddress": "625 8th Avenue",
        "addressLocality": "New York",
        "addressRegion": "NY",
        "postalCode": "10018",
        "addressCountry": "USA"
      },
      "directions": "Bus terminals are at floors 2-4 of the Port Authority building"
    },
    "departureTime": "2017-01-04T12:30:00-05:00",
    "arrivalBusStop": {
      "@type": "BusStop",
      "name": "Boston South Station",
      "address": {
        "@type": "PostalAddress",
        "streetAddress": "Summer St.",
        "addressLocality": "Boston",
        "addressRegion": "MA",
        "postalCode": "02111",
        "addressCountry": "USA"
      },
      "directions": "Bus stops are at thewest side of the train station."
    },
    "arrivalTime": "2017-01-04T17:10:00-05:00"
  },
  "reservedTicket": {
    "@type": "Ticket",
    "ticketNumber": "123XYZ",
    "downloadUrl": "?",
    "printUrl": "?",
    "ticketToken": "qrCode:123456789",
    "additionalTicketText": "?",
    "price": "45.00",
    "priceCurrency": "USD",
    "underName": {
      "@type": "Person",
      "name": "Mary Smith"
    },
    "ticketedSeat": {
      "@type": "Seat",
      "seatingType": "Coach",
      "seatNumber": "27",
      "seatRow": "A"
    }
  }
}
</script>

Microdados

<div itemscope itemtype="http://schema.org/BusReservation">
  <meta itemprop="reservationNumber" content="123456"/>
  <link itemprop="url" href="http://boltbus.com/view/123456"/>
  <div itemprop="underName" itemscope itemtype="http://schema.org/Person">
    <meta itemprop="name" content="John Smith"/>
    <meta itemprop="email" content="john@mail.com"/>
  </div>
  <div itemprop="programMembership" itemscope itemtype="http://schema.org/ProgramMembership">
    <meta itemprop="memberNumber" content="12345"/>
    <meta itemprop="program" content="STA"/>
  </div>
  <div itemprop="bookingAgent" itemscope itemtype="http://schema.org/Organization">
    <meta itemprop="name" content="Bolt Bus NYC"/>
    <link itemprop="url" href="http://boltbus.com/"/>
  </div>
  <meta itemprop="bookingTime" content="2013-01-14T13:05:00-05:00"/>
  <meta itemprop="modifiedTime" content="2013-03-14T13:05:00-05:00"/>
  <link itemprop="confirmReservationUrl" href="http://boltbus.com/confirm?id=123456"/>
  <link itemprop="cancelReservationUrl" href="http://boltbus.com/cancel?id=123456"/>
  <link itemprop="modifyReservationUrl" href="http://boltbus.com/edit?id=123456"/>
  <link itemprop="checkinUrl" href="http://boltbus.com/checkin?id=AB3XY2"/>
  <link itemprop="reservationStatus" href="http://schema.org/ReservationConfirmed"/>
  <div itemprop="reservationFor" itemscope itemtype="http://schema.org/BusTrip">
    <meta itemprop="name" content="?"/>
    <meta itemprop="busNumber" content="63"/>
    <meta itemprop="busName" content="Bolt Bus NY:Boston"/>
    <div itemprop="busCompany" itemscope itemtype="http://schema.org/Organization">
      <meta itemprop="name" content="Bolt NYC"/>
    </div>
    <div itemprop="departureBusStop" itemscope itemtype="http://schema.org/BusStop">
      <meta itemprop="name" content="Port Authority, NYC"/>
      <div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
        <meta itemprop="streetAddress" content="625 8th Avenue"/>
        <meta itemprop="addressLocality" content="New York"/>
        <meta itemprop="addressRegion" content="NY"/>
        <meta itemprop="postalCode" content="10018"/>
        <meta itemprop="addressCountry" content="USA"/>
      </div>
      <meta itemprop="directions" content="Bus terminals are at floors 2-4 of the Port Authority building"/>
    </div>
    <meta itemprop="departureTime" content="2017-01-04T12:30:00-05:00"/>
    <div itemprop="arrivalBusStop" itemscope itemtype="http://schema.org/BusStop">
      <meta itemprop="name" content="Boston South Station"/>
      <div itemprop="address" itemscope itemtype="http://schema.org/PostalAddress">
        <meta itemprop="streetAddress" content="Summer St."/>
        <meta itemprop="addressLocality" content="Boston"/>
        <meta itemprop="addressRegion" content="MA"/>
        <meta itemprop="postalCode" content="02111"/>
        <meta itemprop="addressCountry" content="USA"/>
      </div>
      <meta itemprop="directions" content="Bus stops are at thewest side of the train station."/>
    </div>
    <meta itemprop="arrivalTime" content="2017-01-04T17:10:00-05:00"/>
  </div>
  <div itemprop="reservedTicket" itemscope itemtype="http://schema.org/Ticket">
    <meta itemprop="ticketNumber" content="123XYZ"/>
    <meta itemprop="downloadUrl" content="?"/>
    <meta itemprop="printUrl" content="?"/>
    <meta itemprop="ticketToken" content="qrCode:123456789"/>
    <meta itemprop="additionalTicketText" content="?"/>
    <meta itemprop="price" content="45.00"/>
    <meta itemprop="priceCurrency" content="USD"/>
    <div itemprop="underName" itemscope itemtype="http://schema.org/Person">
      <meta itemprop="name" content="Mary Smith"/>
    </div>
    <div itemprop="ticketedSeat" itemscope itemtype="http://schema.org/Seat">
      <meta itemprop="seatingType" content="Coach"/>
      <meta itemprop="seatNumber" content="27"/>
      <meta itemprop="seatRow" content="A"/>
    </div>
  </div>
</div>

Teste sua marcação.

É possível validar sua marcação usando a Ferramenta de testagem de marcação de e-mail. Cole o código de marcação e clique no botão Validar para verificar o conteúdo e receber um relatório sobre erros.

Especificação

Analise os detalhes do seu e-mail para ver se alguma dessas propriedades se aplica à sua reserva de ônibus. Ao marcar essas propriedades adicionais, você permite que o Google mostre ao usuário uma descrição mais detalhada da reserva de ônibus.

Propriedade Tipo Descrição
número da reserva Texto (obrigatório) O número ou ID da reserva.
url URL Página da Web em que a reserva pode ser visualizada.
UnderName Person ou Organization (obrigatório) O passageiro.
underName.nome Texto (obrigatório) Nome da pessoa.
underName.e-mail Texto Endereço de e-mail.
Associação a programas Assinatura do programa Qualquer assinatura em um panfleto frequente, um programa de fidelidade em hotéis etc. sendo aplicada à reserva.
programMembership.memberNumber Texto Identificador da assinatura.
programMembership.programa Texto É o nome do programa.
agente de reserva Organização ou Pessoa Agente de reserva ou agência. Também aceita uma string (por exemplo, "").
Nome bookingAgent. Texto O nome do agente/serviço.
URL bookingAgent. URL Site do agente/serviço.
Horário da reserva DateTime Data em que a reserva foi feita.
Horário modificado DateTime (recomendado para cartões de confirmação/respostas de pesquisa) A hora da última modificação da reserva.
URL de reserva URL Página da Web em que a reserva pode ser confirmada.
URL de reserva URL Página da Web em que a reserva pode ser cancelada.
URL de modificação URL (recomendado para cartões de confirmação/respostas de pesquisa) Página da Web onde a reserva pode ser modificada.
URL de check-in URL Página da Web em que o passageiro pode fazer check-in.
status da reserva Status da reserva (obrigatório) Status atual da reserva.
reservaPara Ônibus (obrigatório) Informações sobre a viagem de ônibus.
Nome reservaFor. Texto Nome do BusTrip.
reservedFor.busNumber Texto por exemplo, 101.
reservaFor.busName Texto por exemplo, Bolt Express.
reservedFor.busCompany Organização (obrigatório), por exemplo, Bolt NYC. Também aceita uma string (por exemplo, "Bolt NYC").
Nome reservaFor.busCompany. Texto (obrigatório) Nome da organização.
reservedFor.exitBusStop BusStop ou BusStation (obrigatório) De onde o ônibus sai.
Nome da reservaFor.exitBusStop. Texto (obrigatório) Nome do BusStop.
reservaFor.exitBusStop. PostalAddress Endereço do ponto de ônibus / estação de partida.
reservedFor.exitBusStop.address.streetAddress Texto (recomendado para cartões de confirmação/respostas de pesquisa) Endereço da parada/ponto de ônibus de partida.
reservedFor.exitBusStop.address.addressLocality Texto (recomendado para cards de confirmação/respostas de pesquisa) Localidade (por exemplo, cidade) do ponto de ônibus / estação de partida.
reservedFor.exitBusStop.address.addressRegion Texto (recomendado para cartões de confirmação/respostas da pesquisa) Região (por exemplo, estado) do ponto de ônibus / estação de partida.
reservedFor.exitBusStop.address.postalCode Texto (recomendado para cartões de confirmação/respostas de pesquisa) Código postal do ponto de ônibus / estação de partida.
reservedFor.exitBusStop.address.addressCountry Texto ou país (recomendado para cards de confirmação/respostas de pesquisa) País do ponto de ônibus / estação de partida.
reservedFor.exitBusStop. rotas Texto Rotas até o ponto de ônibus.
console de reserva. DateTime (obrigatório) Horário de partida do ônibus.
reservedFor.arrivalBusStop BusStop ou BusStation (Obrigatório) Onde o ônibus chega.
Nome da reservaFor.arrivalBusStop. Texto (obrigatório) Nome do BusStop.
reservaFor.arrivalBusStop.endereço PostalAddress Endereço do ponto de ônibus / estação de chegada.
reservedFor.arrivalBusStop.address.streetAddress Texto (recomendado para cartões de confirmação/respostas de pesquisa) Endereço da parada/ponto de ônibus de chegada.
reservedFor.arrivalBusStop.address.addressLocality Texto (Recomendado para cards de confirmação/Respostas de pesquisa) Localidade (por exemplo, cidade) do ponto de ônibus / estação de chegada.
reservedFor.arrivalBusStop.address.addressRegion Texto (recomendado para cartões de confirmação/respostas de pesquisa) Região (por exemplo, estado) do ponto de ônibus / estação de chegada.
reservedFor.arrivalBusStop.address.postalCode Texto (recomendado para cartões de confirmação/respostas de pesquisa) Código postal do ponto de ônibus / estação de chegada.
reservedFor.arrivalBusStop.address.addressCountry Texto ou país (recomendado para cartões de confirmação/respostas de pesquisa) País da parada / ponto de ônibus de chegada.
reservaFor.arrivalBusStop.rotas Texto Rotas até o ponto de ônibus.
reservedFor.arrivalTime DateTime (obrigatório) Horário de chegada do ônibus.
reservado reservado Ingresso Informações do ingresso.
reservedTicket.ticketNumber Texto O número ou ID do ingresso.
reservedTicket.downloadUrl URL .
reservedTicket.printUrl URL .
reservedTicket.ticketToken Texto ou URL Se a imagem do código de barras estiver hospedada no seu site, o valor do campo será o URL da imagem ou um URI de código QR ou código QR, como "barcode128:AB34" (códigos de barras ISO-15417), "qrCode:AB34" (códigos QR), "aztecCode:AB34" (códigos Aztec), "barcodeEAN:1234" (códigos UP) e "2" (1)
reservedTicket.additionalTicketText Texto Texto explicativo adicional sobre o ingresso.
reservedTicket.preço Texto Preço total do ingresso.
reservedTicket.priceCurrency Texto É a moeda, no formato ISO 4217 de três letras, do preço do ingresso.
reservedTicket.underName Person ou Organization A pessoa ou organização à qual o ingresso se destina.
reservedTicket.underName. Texto Nome da pessoa.
reservedTicket.ticketedSeat Assento O local do assento reservado (por exemplo, 27B). .
reservedTicket.ticketedSeat.seatingType Texto O tipo/classe do assento.
reservedTicket.ticketedSeat.seatNumber Texto O local do assento reservado.
reservedTicket.ticketedSeat.seatRow Texto O local da linha do assento reservado.