Package google.maps.booking.v1alpha

Índice

BookingNotification

Recibe notificaciones de citas de socios de programación externos. El socio debe llamar a UpdateBooking o UpdateOrder según implemente RPC basadas en reservas, como CreateBooking y CheckAvailability, o RPC basadas en pedidos, como CreateOrder y CheckOrderFulfillability.

UpdateBooking

rpc UpdateBooking(UpdateBookingRequest) returns (Booking)

Actualiza una reserva (Booking) existente.

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking
UpdateOrder

rpc UpdateOrder(UpdateOrderRequest) returns (Order)

Actualiza un pedido (Order) existente.

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking

Feed

Recupera el estado de procesamiento de los feeds subidos por socios agregadores externos.

GetStatus

rpc GetStatus(GetStatusRequest) returns (FeedStatus)

Recupera el estado (Status) de un feed subido previamente por el agregador especificado y lo muestra.

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking
ListStatus

rpc ListStatus(ListStatusRequest) returns (ListStatusResponse)

Recupera los estados (Status) de varios feeds de comercios, servicios o disponibilidad subidos previamente por el agregador especificado y los muestra.

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking

InvalidationService

Recibe solicitudes de invalidación de recursos de socios externos.

InvalidateResource

rpc InvalidateResource(InvalidateResourceRequest) returns (Empty)

Invalida un recurso existente.

Una solicitud se ignora si el recurso solicitado no está suscrito al servicio de Google.

Tipos de recursos admitidos: - Retiro

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking

InventoryStatus

Recuperar el inventario y el estado de coincidencia de los comercios subidos

GetMerchantStatus

rpc GetMerchantStatus(GetMerchantStatusRequest) returns (MerchantStatus)

Obtén el MerchantStatus de un Merchant.

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking
ListMerchantStatuses

rpc ListMerchantStatuses(ListMerchantStatusesRequest) returns (ListMerchantStatusesResponse)

Enumera todos los MerchantStatus de un socio que cumpla con las condiciones del filtro.

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking

InventoryUpdate

Recibe actualizaciones de inventario de agregadores externos.

BatchDeleteGenericRecords

rpc BatchDeleteGenericRecords(BatchDeleteGenericRecordsRequest) returns (Empty)

Borra los registros del tipo de feed especificado. Solo realiza una validación básica (como solicitudes con errores de formato) después de la cual se devuelve inmediatamente una respuesta adecuada al socio. Google realiza la validación de lógica empresarial en la solicitud de forma asíncrona. Esta llamada por lotes no garantiza la atomicidad.

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking
BatchPushGenericRecord

rpc BatchPushGenericRecord(BatchPushGenericRecordRequest) returns (Empty)

Inserta o actualiza registros de un tipo de feed especificado. Solo realiza una validación básica (como solicitudes con errores de formato) después de la cual se devuelve inmediatamente una respuesta adecuada al socio. Google realiza la validación de lógica empresarial en la solicitud de forma asíncrona. Esta llamada por lotes no garantiza la atomicidad.

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking
BatchReplaceServiceAvailability

rpc BatchReplaceServiceAvailability(BatchReplaceServiceAvailabilityRequest) returns (BatchReplaceServiceAvailabilityResponse)

Reemplaza la disponibilidad (Availability) de los servicios (Services) existentes. Esta llamada por lotes no garantiza la atomicidad. Solo se mostrarán los horarios disponibles actualizados correctamente.

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking
CreateMerchant

rpc CreateMerchant(CreateMerchantRequest) returns (Merchant)

Crea un comercio (Merchant) nuevo administrado por el agregador especificado y lo muestra.

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking
CreateService

rpc CreateService(CreateServiceRequest) returns (Service)

Crea un servicio (Service) nuevo para un comercio administrado por el agregador especificado y lo muestra.

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking
DeleteMerchant

rpc DeleteMerchant(DeleteMerchantRequest) returns (Empty)

Borra un comercio (Merchant) existente administrado por el agregador especificado. También se inhabilitarán todos los servicios y la disponibilidad del comerciante. Si vuelves a agregar al comercio más adelante, aparecerá el mismo conjunto de servicios y horarios disponibles.

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking
DeleteService

rpc DeleteService(DeleteServiceRequest) returns (Empty)

Borra un servicio (Service) existente de un comercio administrado por el agregador especificado. También se borrará toda la disponibilidad del servicio.

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking
ReplaceServiceAvailability

rpc ReplaceServiceAvailability(ReplaceServiceAvailabilityRequest) returns (ServiceAvailability)

Reemplaza la disponibilidad (Availability) de un servicio (Service) existente de un comercio administrado por el agregador especificado y la muestra.

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking
UpdateMerchant

rpc UpdateMerchant(UpdateMerchantRequest) returns (Merchant)

Actualiza un comercio (Merchant) existente administrado por el agregador especificado y lo muestra.

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking
UpdateService

rpc UpdateService(UpdateServiceRequest) returns (Service)

Actualiza un servicio (Service) existente de un comercio administrado por el agregador especificado y lo muestra.

Alcances de la autorización

Requiere el siguiente alcance de OAuth:

  • https://www.googleapis.com/auth/mapsbooking

Tipo de acción de acción

Tipo de acción predeterminado asociado con un vínculo de acción.

Enumeradores

ActionPlatform

La plataforma en la que se realiza la acción. La aplicación web es el resguardo general. Se recomienda tener al menos un ActionLink con ACTION_PLATFORM_WEB_APPLICATION. Los vínculos con Android y iOS como plataforma solo se usan en el sistema correspondiente.

Enumeradores
ACTION_PLATFORM_UNSPECIFIED La plataforma no está especificada.
ACTION_PLATFORM_WEB_APPLICATION En general, la plataforma de acción es Web.
ACTION_PLATFORM_MOBILE_WEB La plataforma de acción es web en dispositivos móviles.
ACTION_PLATFORM_ANDROID La plataforma de acciones es SO Android.
ACTION_PLATFORM_IOS La plataforma de acción es iOS.

Asesoramiento

Recomendaciones que se muestran al usuario cuando reserva a través de Reserva con Google

Campos
text

Text

Mensaje personalizado que se mostrará al usuario cuando reserve a través de Reserva con Google.

Disponibilidad

Es un horario disponible para el servicio del comercio, el cual indica la hora y la cantidad de cupos.

Campos
start_time

Timestamp

Hora de inicio del espacio disponible.

duration

Duration

Es la duración del espacio disponible.

spots_total

int64

Es la cantidad de cupos totales y disponibles en este horario disponible. Ejemplos:

  • Una clase de yoga con 10 cupos y 3 reservados: availability {spots_total: 10, spots_open: 7 ...}
  • Una sesión de masajes en silla que ya está reservada: availability {spots_total: 1, spots_open: 0 ...}

Nota: Si envías solicitudes con el formato de compresión de disponibilidad que se define a continuación, se inferirán estos dos campos.

  • El uso de Recurrence implica spots_total=1 y spots_open=1.
  • El uso de ScheduleException implica spots_total=1 y spots_open=0.
spots_open

int64

La cantidad de cupos disponibles

availability_tag

string

Es una string opaca opcional para identificar este espacio disponible. Si se configura, se incluirá en las solicitudes de reservar, actualizar o cancelar citas.

resources

Resources

Son los recursos opcionales que se utilizan para distinguir este espacio disponible de otros cuando hay diferentes miembros del personal o salas como parte del mismo servicio.

P. ej., la misma clase de yoga con 2 instructores:

availability { resources { staff_id: "1" staff_name: "Amy" }
               spots_total: 10 spots_open: 7 }
availability { resources { staff_id: "2" staff_name: "John" }
               spots_total: 5 spots_open: 2 }
payment_option_id[]

string

Es una lista de ID que hacen referencia a las opciones de pago que se pueden utilizar para adquirir este espacio disponible. Las opciones de pago reales se definen a nivel del comercio y también se pueden compartir entre varios.

Este campo anula cualquier valor de payment_option_ids especificado en el mensaje del servicio. De manera similar, los valores de payment_option_ids especificados aquí NO tienen que estar presentes en el mensaje del servicio, aunque deben definirse a nivel del comercio.

recurrence

Recurrence

Indica la información de recurrencia para la disponibilidad, que representa más de una hora de inicio. Una recurrencia debe contener citas para un día hábil.

schedule_exception[]

ScheduleException

Son los horarios en los que no se puede programar este servicio. Para limitar la cantidad de mensajes de schedule_exception, considera unir las excepciones adyacentes.

deposit

Deposit

Es un depósito opcional para este horario disponible. Anula el depósito de servicio si se especificó uno.

no_show_fee

NoShowFee

Indica la tarifa opcional por no presentarse para este espacio disponible. Anula la tarifa por no presentarse del servicio si se especificó una.

require_credit_card

RequireCreditCard

Indica si el usuario debe proporcionar una tarjeta de crédito para reservar este espacio disponible. Si no estableces este valor, se heredará del nivel del servicio si lo especificaste allí. (Opcional).

ticket_type_id[]

string

Indica una lista de los tipos de entradas admitidos para este espacio disponible. Si no se establece, todos los tipos de entradas del servicio de jerarquía superior estarán disponibles para este espacio. Ten en cuenta que los valores de este campo deben definirse en ese servicio superior. Ejemplos:

  • Servicio con cuatro tipos de entrada: TicketType {ticket_type_id: "adult_1" short_description: "Para adultos de lunes a viernes"} TicketType {ticket_type_id: "adult_2" short_description: "Para adultos los fines de semana"} TicketType {ticket_type_id: "youth_1" short_description: "Para jóvenes de lunes a viernes"} TicketType {ticket_type_id: "youth_2" short_description: "Para jóvenes los fines de semana"}

Para representar el inventario de lunes a viernes, utiliza lo siguiente: availability {ticket_type_id: "adult_1" ticket_type_id: "youth_1"...}. Para representar el inventario de los fines de semana, utiliza lo siguiente: availability {ticket_type_id: "adult_2" ticket_type_id: "youth_2"...}.

  • Servicio con tres tipos de entrada: TicketType {ticket_type_id: "adult" short_description: "Adultos"} TicketType {ticket_type_id: "youth" short_description: "Jóvenes"} TicketType {ticket_type_id: "senior" short_description: "Adultos mayores"}

A fin de indicar que los tres tipos de entrada están disponibles para este horario, utiliza availability {ticket_type_id: "adult" ticket_type_id: "youth" ticket_type_id: "senior" ...} o `availability {...}' (no establezcas el campo ticket_type_id para este horario disponible).

(opcional)

duration_requirement

DurationRequirement

El requisito para mostrar la duración de los horarios disponibles o la hora de finalización. Se ignorará este campo si el horario disponible no está disponible. No se usa en la vertical de Cosas que hacer. (opcional)

scheduling_rule_overrides

SchedulingRuleOverrides

Se trata de las reglas de programación de la disponibilidad. Si se propagan los campos, anularán cualquier regla de programación correspondiente en las SchedulingRules a nivel del servicio.

confirmation_mode

ConfirmationMode

Indica el modo de confirmación que se usará cuando se reserve este espacio disponible. Los intentos de crear reservas de horarios disponibles con el modo de confirmación CONFIRMATION_MODE_SYNCHRONOUS se deben aceptar o rechazar de inmediato. Los intentos de crear reservas de horarios disponibles con el modo de confirmación CONFIRMATION_MODE_ASYNCHRONOUS se deben rechazar de inmediato o crear con el estado PENDING.

ConfirmationMode

Son los modos de confirmación que se utilizan al reservar espacios disponibles.

Enumeradores
CONFIRMATION_MODE_UNSPECIFIED No se especificó el modo de confirmación. Se supondrá que rige la confirmación síncrona.
CONFIRMATION_MODE_SYNCHRONOUS Las reservas de este espacio disponible se confirmarán de forma síncrona.
CONFIRMATION_MODE_ASYNCHRONOUS Las reservas de este espacio disponible se confirmarán de forma asíncrona.

DurationRequirement

Esta enumeración indica qué requisitos existen para que el usuario confirme o vea la duración y la hora de finalización de los horarios solicitados.

Enumeraciones
DURATION_REQUIREMENT_UNSPECIFIED No se especifica la hora de finalización. Esta es la opción predeterminada.
DO_NOT_SHOW_DURATION La hora de finalización no se muestra al usuario.
MUST_SHOW_DURATION Se debe mostrar al usuario la hora de finalización para poder programar una cita.

Recurrencia

Los mensajes de recurrencia son opcionales, pero permiten una representación más compacta de los espacios disponibles que se repiten de forma sistemática. Suelen representar el cronograma laboral de un día. Los mensajes del tipo ScheduleException se utilizan posteriormente para representar períodos reservados o no disponibles dentro del día laboral.

Requisitos:

  1. La expansión de los horarios disponibles o de las recurrencias NO debe crear horarios disponibles idénticos. Si los ID, el campo start_time, la duración y los recursos coinciden, los horarios disponibles se considerarán idénticos.
  2. NO mezcles el formato de disponibilidad estándar y la recurrencia en los horarios disponibles de un único servicio. La recurrencia beneficia a los comercios o servicios que ofrecen citas. El formato estándar se orienta a los comercios o servicios que tienen clases programadas con regularidad.
  3. Las recurrencias no deben durar más de 24 horas.
Campos
repeat_until

Timestamp

Es la marca de tiempo UTC máxima inclusiva hasta la cual se repite la disponibilidad.

repeat_every

Duration

Define el tiempo que se debe dejar entre horarios disponibles sucesivos.

Ejemplo: Un horario disponible con el campo duration establecido en 20 min, repeat_every en 30 min, start_time en 9:00 a.m. y repeat_until en 11:00 a.m. generará los siguientes horarios disponibles: de 9 a 9:20 a.m., de 9:30 a 9:50 a.m., de 10 a 10:20 a.m., de 10:30 a 10:50 a.m. y de 11 a 11:20 a.m. (Obligatorio)

ScheduleException

Los mensajes de ScheduleException representan períodos reservados o no disponibles dentro de la jornada laboral, que son excepciones a la recurrencia descrita anteriormente. A medida que se reservan los espacios disponibles, se debe actualizar la lista de excepciones para reflejar los períodos que dejan de estar disponibles. La recurrencia en sí no se debe modificar.

Campos
time_range

TimeRange

Es el período que dura la excepción. Los horarios disponibles descritos en la recurrencia que se superpongan con este período desde el cierre hasta la apertura se considerarán no disponibles.

Ejemplo: Si el parámetro Recurrence tuviera el campo duration establecido en 20 min, repeat_every en 30 min, start_time en 9:00 a.m. y repeat_until en 11:00 a.m. y utilizaras un parámetro ScheduleException con el campo time_range configurado con el período de 9:45 a.m. a 11:00 a.m., los siguientes horarios se marcarían como no disponibles: de 9:30 a 9:50 a.m., de 10 a 10:20 a.m. y de 10:30 a 10:50 a.m.

Ten presente que, como el período abarca desde el cierre hasta la apertura, el horario disponible que comienza a las 11 a.m. no se verá afectado.

SchedulingRuleOverrides

Son las reglas de programación a nivel de la disponibilidad.

Campos
last_bookable_sec

int64

Es el último momento (en segundos) en el que se puede reservar este horario disponible. Esta marca de tiempo debe ser anterior al valor en start_sec del horario disponible (si se permite que los usuarios hagan reservas después de la hora de inicio, utiliza SchedulingRules.min_booking_before_end_time a nivel del servicio). Si está presente, anulará cualquier especificación en el campo min_booking_buffer del parámetro SchedulingRules del servicio correspondiente.

first_bookable_sec

int64

Es el primer momento (en segundos) en el que se puede reservar este horario disponible. Esta marca de tiempo debe ser anterior al valor en start_sec del horario disponible o en last_bookable_sec si se especifica.

last_online_cancellable_sec

int64

Si se establece, indica la última hora (en segundos desde el tiempo Unix) en que se puede cancelar este horario disponible específico a través de Reserva con Google. Este campo anulará cualquier regla de cancelación a nivel del servicio. (opcional)

BatchDeleteGenericRecordsRequest

La solicitud por lotes para borrar registros de un tipo de feed especificado.

Campos
parent

string

El nombre del recurso, que tiene el formato - partners/{partner_id}/feeds/{feed_name}.

records[]

GenericDeleteRecord

Registros que se borrarán. Se permite un máximo de 1,000 registros en una llamada a la API.

BatchPushGenericRecordRequest

La solicitud por lotes para insertar o actualizar registros del tipo de feed especificado en la URL de la solicitud.

Campos
parent

string

El nombre del recurso, que tiene el formato - partners/{partner_id}/feeds/{feed_name}.

records[]

GenericRecord

Registros que se insertarán o actualizarán. Se permite un máximo de 1,000 registros en una llamada a la API.

BatchReplaceServiceAvailabilityRequest

Es la solicitud por lotes para reemplazar varios horarios disponibles del servicio (Service).

Campos
parent

string

Formato de partners/{partner_id}.

extended_service_availability[]

ExtendedServiceAvailability

La disponibilidad extendida del servicio que se usa para reemplazar los horarios disponibles existentes.

BatchReplaceServiceAvailabilityResponse

Es la respuesta por lotes para reemplazar varios horarios disponibles del servicio (Service). En este mensaje solo se incluirán los horarios disponibles actualizados correctamente.

Campos
extended_service_availability[]

ExtendedServiceAvailability

Los mensajes de disponibilidad extendida del servicio se actualizaron correctamente y se usaron para reemplazar los horarios disponibles existentes.

Booking

Es la reserva de un horario disponible del inventario.

Campos
name

string

Nombre del recurso de la reserva: partners/{partner ID}/bookings/{booking ID}

merchant_id

string

ID del comercio para el horario disponible

service_id

string

ID del servicio del comercio

start_time

Timestamp

Es la hora de inicio del horario disponible.

duration

Duration

Es la duración del espacio disponible.

client_information

ClientInformation

Información personal del cliente que programa la cita

status

BookingStatus

Estado de la reserva

payment_information

PaymentInformation

Es la información sobre las transacciones de pago relacionadas con la reserva.

party_size

int64

Tamaño del grupo de la reserva

BookingFailure

Son datos del estado que indican por qué se produjo un error al procesar una reserva de forma asíncrona. El principal objetivo de BookingFailure es captar errores de lógica empresarial.

Campos
cause

Cause

Es el motivo por el que se produjo un error en la reserva. (Obligatorio)

rejected_card_type

CreditCardType

(obligatorio solo si la causa es PAYMENT_ERROR_CARD_TYPE_REJECTED)

description

string

Este campo opcional se utiliza para que el socio incluya información adicional solo con fines de depuración. (Opcional)

payment_failure

PaymentFailureInformation

Es la información sobre los errores de pago.

Cause

Es una enumeración de las causas del error.

Enumeraciones
CAUSE_UNSPECIFIED Valor predeterminado: No utilizar. Equivale a un "error desconocido".
SLOT_UNAVAILABLE El horario disponible al que se hace referencia ya no está disponible.
SLOT_ALREADY_BOOKED_BY_USER El usuario ya reservó una cita para el horario disponible al que se hace referencia.
LEASE_EXPIRED La retención (si se realizó) venció y ya no se puede utilizar para completar la reserva solicitada.
OUTSIDE_CANCELLATION_WINDOW La cancelación solicitada no se puede realizar en este momento debido a restricciones de tiempo en la política de cancelación del comercio.
PAYMENT_ERROR_CARD_TYPE_REJECTED Se produjo un error al procesar el pago porque el comercio no aceptó el tipo de tarjeta de crédito proporcionada. El tipo de tarjeta de crédito debe proporcionarse en rejected_card_type.
PAYMENT_ERROR_CARD_DECLINED Se produjo un error al procesar el pago porque se rechazó la tarjeta de crédito proporcionada.
PAYMENT_OPTION_NOT_VALID Se produjo un error relacionado con el paquete o la membresía que se utilizó para pagar la reserva. Es posible que no queden usos válidos, que haya vencido, etc.
PAYMENT_ERROR Se produjo un error al procesar el pago de esta reserva. Utiliza este valor para indicar un error general relacionado con el pago, solo si el error no coincide con alguno específico mencionado arriba.
USER_CANNOT_USE_PAYMENT_OPTION El usuario no puede utilizar la opción de pago especificada (p. ej., intenta utilizar dos veces un precio otorgado por única vez).
BOOKING_ALREADY_CANCELLED Ya se canceló la reserva que el usuario intentó cancelar.
BOOKING_NOT_CANCELLABLE No se puede cancelar la reserva que el usuario intentó cancelar.
OVERLAPPING_RESERVATION El usuario ya tiene una reserva demasiado próxima.
USER_OVER_BOOKING_LIMIT No se pudo completar la reserva porque el usuario superó el límite de reservas por usuario del agregador.
PAYMENT_REQUIRES_3DS1

Se establece cuando el pago se rechaza debido a que solicitas que se intente realizar la transacción nuevamente, pero esta vez después de pasar el desafío o la respuesta 3DS1. Ten presente que se conservará el estado actual de error en la transacción. El reintento se hará completamente por separado.

Cuando este es el motivo del error, se DEBE establecer payment_failure.3DS1_parameters. De lo contrario, la causa actual se tratará como si fuera del tipo PAYMENT_ERROR.

PaymentFailureInformation

Es la información sobre los errores de pago.

Campos
threeds1_parameters

ThreeDS1Parameters

Son los parámetros que utiliza un agregador RwG para iniciar un protocolo de autenticación 3DS1 con el usuario. Se ignorará, a menos que BookingFailure.cause se establezca en PAYMENT_REQUIRES_3DS1.

ThreeDS1Parameters

Son los parámetros que solicitan que RwG realice un desafío 3DS1.

Los parámetros se establecen en función de la descripción de EMVCo sobre el protocolo 3DS1.

Campos
acs_url

string

La URL desde la cual se carga un formulario para presentárselo al usuario de autenticación

pa_req

string

Es una solicitud de PaymentAuthentication. Se publicará en el formulario ACSUrl si se proporciona.

transaction_id

string

Es un identificador que utiliza el proveedor de ACS. Se publicará en el formulario ACSUrl si se proporciona.

md_merchant_data

string

Datos del comercio. Se publicará en el formulario ACSUrl si se proporciona.

BookingStatus

Es el estado de una reserva.

Enumeraciones
BOOKING_STATUS_UNSPECIFIED No se especifica.
CONFIRMED Se confirmó la reserva.
PENDING_MERCHANT_CONFIRMATION La reserva tiene pendiente la confirmación del comercio para que se pueda pasar al estado CONFIRMED (NO se admite actualmente).
PENDING_CLIENT_CONFIRMATION La reserva tiene pendiente la confirmación del cliente para que se pueda pasar al estado CONFIRMED (NO se admite actualmente).
CANCELED Se canceló la reserva en nombre del usuario.
NO_SHOW El cliente no se presentó a la cita.
NO_SHOW_PENALIZED El cliente no se presentó a la cita, lo que incumple la política de cancelación.
FAILED No se pudo completar la reserva debido a un error de procesamiento.
DECLINED_BY_MERCHANT El comercio rechazó la reserva de forma asíncrona.

CallMerchant

El mensaje en blanco que se usará en UnsupportedPartySizeOption mostrará una opción para que los usuarios llamen a la empresa y realicen una reserva.

CancellationPolicy

Es la política de cancelación de un servicio.

Campos
refund_condition[]

RefundCondition

Cero o más condiciones de reembolso aplicables a la política.

RefundCondition

Define una sola condición de reembolso. Se pueden utilizar varias condiciones de reembolso juntas para describir los "pasos de reembolso" como varias duraciones antes de la hora de inicio del servicio.

Campos
min_duration_before_start_time

Duration

Es la duración antes de la hora de inicio que indica hasta cuándo el cliente puede recibir un reembolso parcial del costo del servicio especificado en refund_percent. Cuando se establece en 0 (valor predeterminado), el servicio se puede cancelar en cualquier momento.

refund_percent

uint32

Es el porcentaje que se puede reembolsar en un rango de [0, 100], siempre que la reserva del servicio se cancele antes de la hora de inicio del servicio, según se establezca en min_duration_before_start_time. Cuando se establece en 0 (valor predeterminado), el servicio no es reembolsable. Cuando se establece en 100, el servicio es completamente reembolsable.

ClientInformation

Es la información personal sobre el usuario que hace una reserva.

Campos
given_name

string

Nombre del cliente

family_name

string

Apellido del cliente

address

PostalAddress

Dirección del cliente

telephone

string

Número de teléfono del cliente

email

string

Dirección de correo electrónico del cliente

CreateMerchantRequest

Es la solicitud para crear un comercio (Merchant).

Campos
parent

string

Es el nombre de recurso superior del socio propietario de este comercio, en el formato partners/{partner_id}.

merchant_id

string

Es el ID de comerciante que se usará para este comercio.

merchant

Merchant

Indica el comercio que se creará.

CreateServiceRequest

Es la solicitud para crear un nuevo servicio (Service).

Campos
parent

string

Es el nombre de recurso superior del comercio propietario de este servicio, en el formato partners/{partner_id}/merchants/{merchant_id}.

service_id

string

Es el ID de servicio que se usará para este servicio.

service

Service

El servicio que se creará.

CreditCardRestrictions

Son las restricciones relacionadas con los tipos de tarjeta de crédito que acepta este comercio.

Campos
credit_card_type[]

CreditCardType

Indica una lista de las tarjetas de crédito admitidas. Si este campo está vacío, no se admite ninguna tarjeta de crédito.

CreditCardType

Es un tipo de tarjeta de crédito.

Enumeradores
CREDIT_CARD_TYPE_UNSPECIFIED No se utiliza.
VISA Hace referencia a una tarjeta de crédito Visa.
MASTERCARD Hace referencia a una tarjeta de crédito Mastercard.
AMERICAN_EXPRESS Hace referencia a una tarjeta de crédito American Express.
DISCOVER Hace referencia a una tarjeta de crédito Discover.
JCB Hace referencia a una tarjeta de crédito JCB.

DeleteMerchantRequest

Es la solicitud para borrar un comercio (Merchant).

Campos
name

string

Es el nombre de recurso del comercio que se borrará. Tiene este formato: partners/{partner_id}/merchants/{merchant_id}

DeleteServiceRequest

Es la solicitud para borrar un servicio (Service).

Campos
name

string

Es el nombre de recurso del servicio que se borrará. Tiene este formato: partners/{partner_id}/merchants/{merchant_id}/services/{service_id}

Deposit

Es un depósito que se le puede cobrar al usuario o por el cual se le puede aplicar una retención en su tarjeta de crédito.

Campos
deposit

Price

Importe del depósito

min_advance_cancellation_sec

int64

Cancelación anticipada mínima del depósito.

deposit_type

PriceType

Define cómo se determina el depósito a partir de la disponibilidad.

DirectMerchantPayment

Información sobre cómo el usuario puede pagar directamente al comercio en lugar de pagar por adelantado el servicio a través de RwG.

Campos
payment_methods[]

Text

Se recomienda a los usuarios que paguen solo mediante la forma de pago que se menciona a continuación.

DurationRange

Contenedor para un rango de duración que puede ser delimitado o no. Se requiere al menos uno de los valores de min_duration y max_duration.

Campos
min_duration

Duration

Duración mínima.

max_duration

Duration

Duración máxima.

ExtendedServiceAvailability

Es una lista de los horarios disponibles, a quién se deben aplicar y cuándo.

Campos
merchant_id

string

Este es un campo obligatorio para especificar a qué comercio pertenecen los mensajes de disponibilidad que aparecen a continuación.

service_id

string

Este es un campo obligatorio para especificar a qué servicio pertenecen los mensajes de disponibilidad que aparecen a continuación.

start_time_restrict

Timestamp

Si se proporciona, consideraremos que las entidades de disponibilidad provistas corresponden a un resumen completo de [start_time_restrict, end_time_restrict]. Es decir, se borrará toda la disponibilidad existente si se cumple la siguiente condición:

   start_time_restrict <= availability.start_sec &&
   availability.start_sec < end_time_restrict

Si se establece un mensaje de duración, la condición se verá aún más restringida:

  availability.duration == duration_restrict

Si se establece un mensaje de resources_restrict, la condición se verá aún más restringida:

   availability.resources.staff_id == resources_restrict.staff_id &&
   availability.resources.room_id == resources_restrict.room_id

Estos campos suelen utilizarse para proporcionar una actualización completa de la disponibilidad en un período determinado.

Si se establece start_time_restrict, pero se deja end_time_restrict sin definir, se interpretará que el período en cuestión abarca desde start_time_restrict en adelante.

end_time_restrict

Timestamp

Si se establece end_time_restrict, pero se deja start_time_restrict sin definir, se interpretará que el período en cuestión abarca todo el período hasta end_time_restrict.

duration_restrict

Duration

Si se establece la duración, el alcance de la actualización se verá aún más restringido y solo abarcará la disponibilidad cuya duración coincida con aquella establecida.

resources_restrict

Resources

Si se establece resources_restrict, el alcance de la actualización se verá aún más restringido y solo abarcará este conjunto de recursos. Todos los campos de ID de los recursos deben coincidir exactamente.

availability[]

Availability

Es la nueva lista de horarios disponibles.

FeedStatistics

Son las estadísticas obtenidas al procesar un feed subido.

Campos
new_items

int64

Elementos que agregó este feed recientemente. Los artículos pueden ser comerciantes, horarios disponibles o servicios, según el tipo de feed.

existing_items

int64

Artículos existentes, actualizados según sea necesario a partir de la información más reciente del feed.

deleted_items

int64

Artículos que ya no están presentes en este feed y que se quitaron como resultado.

FeedStatus

Es el estado de un feed subido por la plataforma del agregador.

Campos
name

string

El nombre del recurso del feed, que tiene el formato

  • partners/{partner_id}/feeds/merchants/{file_name}
  • partners/{partner_id}/feeds/services/{file_name}
  • partners/{partner_id}/feeds/availability/{file_name}
state

State

Es el estado de procesamiento de este feed.

error_details

string

Cadena legible que proporciona más detalles si no pudimos procesar este feed.

statistics

FeedStatistics

Estadísticas específicas de este feed

State

Es una variable enumerada que permite indicar el estado de procesamiento de un feed.

Enumeradores
STATE_UNSPECIFIED Valor predeterminado. No se utiliza.
IN_PROGRESS El feed aún se está procesando.
SUCCESS El feed se procesó correctamente.
FAILURE Detectamos un error al procesar el feed.

FoodOrderingMetadata

Metadatos de los vínculos de acciones para pedir comida

Campos
fee_details[]

FeeDetails

Son los detalles de las tarifas que se cobran al usuario, además del total del artículo. Se repite para diferentes tipos de tarifas, como cargos del servicio, cargos de entrega, etcétera.

advance_order_details

AdvanceOrderDetails

Detalles sobre la asistencia avanzada de pedidos, también conocido como pedido por adelantado, en el que el usuario puede realizar un pedido para su entrega en un momento posterior a la fecha actual.

Campo de unión fulfillment_duration_options. Duración del tiempo de entrega del pedido desde la confirmación del pedido. Para los pedidos con entrega a domicilio, es el tiempo que transcurre hasta que se entrega la comida. En el caso de los pedidos para retirar, es el tiempo que transcurre hasta que la comida está lista para retirar. Las direcciones (fulfillment_duration_options) solo pueden ser una de las siguientes opciones:
fulfillment_lead_time_duration

Duration

Duración fija. Por ejemplo: 30 min.

fulfillment_lead_time_duration_range

DurationRange

Es un rango de duración. Ejemplos: * De 30 min a 45 min * De más de 30 min * Menos de 50 min

AdvanceOrderDetails

Para recibir asistencia con pedidos por adelantado.

Campos
is_supported

bool

Verdadero si se admite la opción Pedidos anticipados, también conocido como Pedido por adelantado. (obligatorio)

FeeDetails

Detalles de la tarifa.

Campos
type

FeeType

Tipo de tarifa. (obligatorio)

fee_amount

FeeAmount

Es el importe de la tarifa expresado en la moneda de la unidad, un porcentaje del valor del carrito o una combinación de ambos. (obligatorio)

FeeAmount

FeeAmount Ejemplos: * Tarifa fija: USD 0 (sin tarifa), USD 1.5 * Rango de tarifa fija: USD 1.0 (mínimo), USD 3.0 (máximo), USD 5.0-6.0 * Porcentaje del tamaño del carrito: 15.5%, 10%-20%, 10% (mínimo), 15% (máximo) * Compuesto compuesto del rango y porcentaje: 5%: USD 2.5 (mínimo), 25.5% & USD 4.5 (máximo), 10% & USD 1.5-2.5, 10.5%- 20% & USD 2.5 a 3.5

Campos
cart_percentage

QuantitativeValue

Es la tarifa en términos de un porcentaje del valor del carrito. Admite un rango (delimitado y no delimitado) o un porcentaje fijo. Debe ser un valor entre 0 y 100. Ejemplos: * Fijo 5.5% * Al menos 5.5% * Como máximo 5.5% * 4.5% a 5.5%

Campo de unión amount_options. Opciones para especificar el importe monetario. Las direcciones (amount_options) solo pueden ser una de las siguientes opciones:
amount

Money

Importe fijo. Por ejemplo, USD 3.5.

amount_range

MoneyRange

Rango del importe. Ejemplos: * USD 3.5 a USD 5.5 * Como mínimo USD 3.5 * máximo USD 5.5

amount_unknown

bool

Importe desconocido.

FeeType

Tipo de tarifa.

Enumeraciones
FEE_TYPE_UNSPECIFIED Tipo de tarifa sin especificar.
DELIVERY Para los costos de envío.
SERVICE Para cargos del servicio.

FulfillmentOption

Es la opción de entrega para un vínculo de acción de pedido en línea.

Campos
fulfillment_type

FulfillmentType

Obligatorio. El tipo de entrega.

available_day[]

AvailableDay

Obligatorio. Una lista de los días en los que hay disponibilidad para este método de entrega (de preferencia, 2 como mínimo).

fee_details

FeeDetails

Obligatorio. Son los detalles de la tarifa del método de entrega.

minimum_order

Price

Obligatorio. Pedido mínimo del método de entrega asociado con el vínculo de acción.

AvailableDay

Disponibilidad por día.

Campos
fulfillment_date

Date

Obligatorio. Una fecha disponible para un método de entrega. Se supone que está en la zona horaria del comercio.

last_ordering_time

Timestamp

Obligatorio. Marca de tiempo de Unix. La última vez que un usuario pudo hacer un pedido y recibir artículos antes del fulfillment_date. En otras palabras, después de last_ordering_time, fulfillment_date ya no se mostrará como disponible.

Por ejemplo, si fulfillment_date es 2020-08-10: - un valor last_ordering_time de 2020-08-10 18:00 significa que, para recibir su pedido el 10-08-2020, el cliente debe hacer ese pedido a las 6 p.m. del mismo día. - un valor last_ordering_time de 2020-08-08 20:00 significa que, para recibir su pedido el 10-08-2020, el cliente debe hacer el pedido a las 8 p.m. dos días antes.

FeeDetails

Son los detalles de la tarifa del método de entrega asociado con el vínculo de acción.

Campos
Campo de unión fee_details. Modelo de tarifas para el método de entrega. Las direcciones (fee_details) solo pueden ser una de las siguientes opciones:
no_fee

NoFee

No se aplica ninguna tarifa por el método de entrega.

base_fee

MinimumFee

Es la tarifa base asociada con el método de entrega.

fixed_fee

FixedFee

Es la tarifa fija asociada con el método de entrega.

FixedFee

Es la tarifa fija requerida para el método de entrega asociado con el vínculo de acción.

Campos
amount

Price

Obligatorio. El importe de la tarifa fija del método de entrega.

FulfillmentType

El tipo de entrega asociado con un vínculo de acción.

Enumeraciones
FULFILLMENT_TYPE_UNSPECIFIED El tipo de entrega no está especificado.
FULFILLMENT_TYPE_DELIVERY El tipo de entrega es la entrega.
FULFILLMENT_TYPE_PICKUP El tipo de entrega es retiro.

MinimumFee

Es la tarifa mínima requerida para el método de entrega asociado con el vínculo de acción.

Campos
base_fee_amount

Price

Obligatorio. El importe de la tarifa base del método de entrega.

NoFee

No se requiere ninguna tarifa para el método de entrega asociado con el vínculo de acción.

GenericDeleteRecord

Registro que se borrará del tipo de feed mencionado en la solicitud de URL.

Campos
delete_time

Timestamp

Obligatorio. Esta marca de tiempo se usa para determinar el orden en el que se aplicará una eliminación al inventario.

Campo de unión record_type. Encapsula diferentes tipos de feed (ndjson, basado en proto, etcétera) El socio puede proporcionar un registro completo de manera similar a como se proporciona un registro en un feed o la API de BatchPush. Los socios también tienen la opción de incluir solo los campos esenciales de un registro que son necesarios para identificarlo de manera inequívoca. Las direcciones (record_type) solo pueden ser una de las siguientes opciones:
data_record

bytes

Para feeds que no están basados en proto.

proto_record

Any

Para feeds basados en proto.

GenericRecord

Registro del tipo de feed mencionado en la solicitud de URL.

Campos
generation_timestamp

Timestamp

Obligatorio. Esta marca de tiempo se usa para garantizar el orden correcto de las actualizaciones de inventario.

Campo de unión record_type. Encapsula diferentes tipos de feed (ndjson, basado en proto, etcétera) Las direcciones (record_type) solo pueden ser una de las siguientes opciones:
data_record

bytes

Para feeds que no están basados en proto.

proto_record

Any

Para feeds basados en proto.

GeoCoordinates

Son los datos geográficos de una ubicación, incluidas la latitud, longitud y dirección.

Campos
latitude

double

Es la latitud en grados. (Opcional)

longitude

double

Es la longitud en grados. (Opcional)

Campo de unión addresses. Es la dirección de una ubicación, ya sea estructurada o no. Las direcciones (addresses) solo pueden ser una de las siguientes opciones:
address

PostalAddress

Dirección postal de la ubicación (preferida).

unstructured_address

string

También se puede proporcionar una dirección no estructurada como resguardo, p. ej., "1600 amphitheatre parkway mountain view, ca 94043".

GetMerchantStatusRequest

La solicitud para obtener un MerchantStatus

Campos
name

string

Obligatorio. Es el nombre del recurso, con el formato partners/{partner_id}/merchants/{merchant_id}/status.

GetStatusRequest

Es la solicitud para recuperar el estado (Status) de un feed específico subido por la plataforma del agregador.

Campos
name

string

El nombre del recurso del feed, que tiene el formato

  • partners/{partner_id}/feeds/merchants/{file_name}
  • partners/{partner_id}/feeds/services/{file_name}
  • partners/{partner_id}/feeds/availability/{file_name}

HomeServiceData

Es necesario proporcionar información adicional para la vertical de servicio a domicilio.

Campos
category_type

string

La categoría de alto nivel a la que pertenece este servicio para el hogar. P.ej., plomero, electricista, etc.

job_type

string

Es el tipo de trabajo en la categoría a la que pertenece el servicio para el hogar determinado. P.ej., unclog_drain, install_faucet son los tipos de trabajos que se encuentran en la categoría de plomero.

IntegrationType

Es la profundidad de integración admitida.

Enumeraciones
INTEGRATION_TYPE_UNSPECIFIED La configuración predeterminada es END_TO_END.
INTEGRATION_TYPE_END_TO_END Es la integración completa que permite las reservas de extremo a extremo a través de Google.
INTEGRATION_TYPE_INVENTORY_ONLY No es necesario que el servidor de reservas admita este servicio. Solo se deben enviar los datos de comercios y servicios, y, opcionalmente, los de disponibilidad.

InvalidateResourceRequest

Solicitud para invalidar un recurso.

Campos
resource_id

string

El nombre del recurso que se invalidará.

Por ejemplo, para un recurso de retiro, el nombre debe tener el formato partners/{partner_id}/pickups/{pickup_id}. Las implementaciones DEBEN eliminar las versiones almacenadas en caché del recurso identificado.

LineItem

Es un único elemento en un pedido: la reserva de un solo horario disponible de un servicio.

Campos
service_id

string

Es el ID del servicio del comercio.

start_sec

int64

Hora de inicio del horario disponible en segundos de la hora UTC desde el epoch Unix.

duration_sec

int64

Es la duración del horario disponible, expresada en segundos.

tickets[]

OrderedTickets

Cantidad de entradas ordenadas por tipo de entrada.

price

Price

Es el precio total (sin impuestos) de esta línea de pedido.

status

BookingStatus

Estado de la línea de pedido.

Entradas ordenadas

Es la cantidad de entradas pedidas por tipo de entrada.

Campos
ticket_id

string

ID de un tipo de ticket.

count

int32

Cantidad de entradas pedidas para este tipo.

ListMerchantStatusesRequest

La solicitud para obtener una lista de MerchantStatus

Campos
parent

string

Obligatorio. El elemento superior, propietario de esta colección de estados de comercio. Formato: partners/{partner_id}/merchants

page_size

int32

Obligatorio. La cantidad máxima de elementos que se mostrarán. Ten en cuenta que el servidor puede reducir el tamaño de la página.

page_token

string

Opcional. Es el valor nextPageToken que se muestra de una ListMerchantStatusResponse anterior, si corresponde.

booking_inventory_status_restrict

BookingInventoryStatus

Opcional. Es una restricción opcional para filtrar los resultados por estado del inventario de reservas.

waitlist_inventory_status_restrict

WaitlistInventoryStatus

Opcional. Restricción opcional para filtrar los resultados por estado del inventario de la lista de espera.

geo_match_restrict

GeoMatchingStatus

Opcional. Restricción opcional para filtrar los resultados por estado de coincidencia geográfica.

BookingInventoryStatus

Estado del inventario de reservas de extremo a extremo.

Enumeraciones
BOOKING_INVENTORY_STATUS_UNSPECIFIED No se especifica.
NO_VALID_FUTURE_INVENTORY El comercio no tiene inventario de reservas para los próximos 30 días.
HAS_VALID_FUTURE_INVENTORY El comercio tiene inventario de reservas para los próximos 30 días.

GeoMatchingStatus

Estado de coincidencia de la ubicación geográfica del comercio.

Enumeraciones
GEO_MATCHING_STATUS_UNSPECIFIED No se especifica.
GEO_UNMATCHED El comercio no tiene coincidencia geográfica.
GEO_MATCHED El comercio tiene coincidencia geográfica.

WaitlistInventoryStatus

Estado del inventario de la lista de espera de extremo a extremo.

Enumeraciones
WAITLIST_INVENTORY_STATUS_UNSPECIFIED No se especifica.
NO_VALID_WAITLIST_SERVICE El comercio no tiene un servicio compatible con la lista de espera.
HAS_VALID_WAITLIST_SERVICE El comercio tiene un servicio compatible con la lista de espera.

ListMerchantStatusesResponse

Es la respuesta a la lista MerchantStatus.

Campos
merchant_statuses[]

MerchantStatus

Lista de estados de comercios que cumplen con las condiciones del filtro.

next_page_token

string

Es el token para recuperar la página siguiente de resultados. Si está vacío, esto significa que no hay más resultados en la lista.

ListStatusRequest

Es la solicitud para recuperar el estado (Status) de varios feeds subidos por la plataforma del agregador.

Campos
name

string

Es el nombre de recurso del feed, en el siguiente formato:

  • partners/{partner_id}/feeds/merchants
  • partners/{partner_id}/feeds/services
  • partners/{partner_id}/feeds/availability
page_size

int32

La cantidad máxima de elementos que se mostrarán.

page_token

string

El valor next_page_token que se muestra de una solicitud de lista anterior, si existe.

state_restrict

State

Restricción opcional para filtrar los resultados por estado del feed.

time_range_restrict

TimeRange

Es una restricción opcional para filtrar los resultados por límite inferior y superior. Si no se establece el campo start_time, la configuración predeterminada será el inicio del tiempo Unix. Si no se establece el campo end_time, la configuración predeterminada será la hora actual.

ListStatusResponse

Es la solicitud para recuperar el estado (Status) de varios feeds subidos por la plataforma del agregador.

Campos
status[]

FeedStatus

Es la lista en orden cronológico inverso de los estados de los feeds subidos. La cantidad máxima de elementos mostrados se basa en el campo page_size de la solicitud.

next_page_token

string

Es el token para recuperar la página siguiente de resultados. Si está vacío, esto significa que no hay más resultados en la lista.

LocalizedString

Es una instancia de una string en una configuración regional.

Campos
locale

string

Es un código de idioma IETF BCP 47, como "en", "mas", "zh-Hant", "de-CH-1901", etc. Consulta http://www.w3.org/International/articles/language-tags/.

value

string

Mensaje en la configuración regional anterior (UTF-8).

Location

Es la información geográfica sobre una ubicación.

Campos
place_id

string

Es el ID de un lugar en la base de datos de Google Places y en Google Maps. Consulta https://developers.google.com/places/web-service/place-id para obtener más información sobre los IDs de lugar. Si se proporciona, Google correlacionará la ubicación con este lugar.

name

string

El nombre, el teléfono, la URL y la información geográfica de la ubicación permiten correlacionar la ubicación con lugares que ya se incluyen en Google Maps.

Este campo es opcional, pero puede ser obligatorio en algunos contextos. Por ejemplo, Service.location sin un nombre no se hará coincidir con una entidad comercial, incluso si se encuentran en la misma dirección. (opcional)

telephone

string

Es el número de teléfono público de la ubicación, incluidos los códigos de país y de área, p. ej., +14567891234. (Opcional)

url

string

Es la URL del sitio web público de la ubicación. (Opcional)

geo

GeoCoordinates

Es la información geográfica de la ubicación, incluidas la latitud, la longitud y la dirección. (Opcional)

location_type

LocationType

Es el tipo de ubicación. Se debe proporcionar si esta ubicación se proporciona para un servicio.

location_id

string

Es una referencia exclusiva de la ubicación dentro del servicio. El ID se puede utilizar para hacer referencia a esta ubicación en otros campos del servicio. P.ej., En el formulario de entrada personalizado, se puede usar un conjunto de IDs de ubicación para especificar opciones de puntos de retiro. Si se establece, este ID debe ser único dentro de un mismo servicio. (Opcional)

LocationType

Es el tipo de esta ubicación.

Enumeraciones
LOCATION_TYPE_UNSPECIFIED Indica que no se especificó el tipo de ubicación.
VISITED_LOCATION Es la ubicación que visita este servicio.
START_LOCATION Es la ubicación donde se inicia este servicio. También sirve como MEETING_LOCATION.
END_LOCATION Es la ubicación donde termina este servicio.

Merchant

Es la información sobre un comercio que se encuentra en la plataforma del agregador.

Campos
name

string

Es el nombre del recurso del comercio, en el formato partners/{partner_id}/merchants/{merchant_id}.

merchant_name

string

El campo merchant_name, el teléfono, la URL y la información geográfica permiten correlacionar el inventario del socio con comercios que ya se incluyen en Google Maps. Esta información no se mostrará.

Es el nombre del comercio.

telephone

string

Número de teléfono público del comercio, incluidos los códigos de país y área, p.ej., +14567891234.

url

string

Es la URL del sitio web público del comercio.

geo

GeoCoordinates

Es la información geográfica del comercio, incluidas la latitud, la longitud y la dirección.

category

string

La categoría de la empresa en la plataforma del agregador.

num_bookings_30d
(deprecated)

int64

Este campo es obsoleto.

tax_rate_basis_points
(deprecated)

uint32

Es la tasa impositiva del comercio en puntos básicos (la centésima parte de un punto porcentual). Por ejemplo, si la tasa impositiva es del 7.5%, este campo se debe establecer en 750.

Si este campo no se define o se establece en 0, el precio total que se cobra a un usuario por cualquier servicio provisto por este comercio es el precio exacto especificado en Service.price. Se supone que el precio del servicio está exento de impuestos o que ya incluye los impuestos aplicables. Los impuestos no se mostrarán al usuario como una línea de pedido separada.

Si este campo se establece en un valor distinto de cero, el precio total que se le cobrará a un usuario por cualquier servicio provisto por este comercio incluirá el precio del servicio más el impuesto calculado con la tasa impositiva proporcionada aquí. Las fracciones de la unidad monetaria más pequeña (por ejemplo, fracciones de un centavo) se redondearán al número entero más cercano. Los impuestos se mostrarán al usuario como un elemento de una sola línea aparte.

Este campo es obsoleto; utiliza tax_rate en su lugar.

tax_rate

TaxRate

Es la tasa impositiva del comercio. Si está presente, este campo anula el campo obsoleto tax_rate_basis_points. Un mensaje vacío (es decir, tax_rate { }) restablecerá la tasa impositiva a cero.

payment_restrictions

PaymentRestrictions

Son las restricciones relacionadas con las formas de pago que acepta este comercio. Suponemos que no existen restricciones si no se establece este campo.

payment_option[]

PaymentOption

Son las opciones de pago disponibles para este comercio. Los servicios de este comercio podrán limitar individualmente las opciones de pago que permiten.

payment_processor_config
(deprecated)

PaymentProcessorConfig

Es la configuración de un procesador de pagos con tokens, si el comercio lo admite.

tokenization_config

TokenizationConfig

Es la configuración de un procesador de pagos con tokens, si el comercio lo admite.

terms

Terms

Son los Términos y Condiciones específicos del comercio que se muestran al usuario cuando se reserva un servicio a través de Reserva con Google. Además, los Términos y Condiciones del socio agregador siempre se muestran al usuario y no se deben proporcionar aquí.

brand_id

string

Es una string opaca que identifica la marca orientada al consumidor que se debe utilizar al mostrar la atribución del socio. Este campo permite que los socios con varias marcas orientadas al consumidor proporcionen comercios para todas las marcas dentro del mismo feed.

Una marca consiste en propiedades orientadas al consumidor, como el nombre, el logotipo, las Condiciones del Servicio y la Política de Privacidad.

Si solo hay una marca de socio orientada al consumidor, este campo se puede omitir.

Posibles situaciones:

El socio no tiene varias marcas orientadas al consumidor: Omite este campo.

El socio tiene varias marcas configuradas:

  If this field is set
    --> Associated consumer-facing brand attribution is used

  If this field is unset or the empty string
    --> Default consumer-facing brand attribution is used

Nota importante: La mayoría de los socios no necesitan establecer este campo. Si un socio desea utilizar este campo, primero debe comunicarse con nosotros para configurar marcas separadas, incluida la marca predeterminada.

matching_hints

MerchantMatchingHints

Son las sugerencias para ayudar a Google a correlacionar un comercio con un lugar en Google Maps. Nota: La mayoría de los socios no necesitan configurar este campo, ya que Google utilizará la información proporcionada anteriormente para establecer una coincidencia entre los comercios y los lugares de Google Maps. (Opcional).

service_attribute[]

ServiceAttribute

Son las definiciones de cualquier atributo de servicio utilizado para describir los servicios de este comercio. (opcional)

waitlist_advisement

Advisement

Opcional. Consejos generales de un comercio específico para un usuario que se une a una lista de espera a través de Reserva con Google. En el asesoramiento, los campos de texto individuales deben limitarse a 100 bytes de longitud.

MerchantMatchingHints

Son las sugerencias utilizadas para ayudar a Google a correlacionar un comercio con un lugar en Google Maps.

Campos
place_id

string

Es el ID de un lugar en la base de datos de Google Places y en Google Maps. Consulta https://developers.google.com/places/web-service/place-id para obtener más información sobre los IDs de lugar.

MerchantStatus

Es el estado de un comercio en la plataforma de Reserva con Google.

Campos
name

string

Es el nombre del recurso de estado del comercio, que tiene el formato partners/{partner_id}/merchants/{merchant_id}/status.

merchant_name

string

Es el nombre del comercio proporcionado por los socios.

input_geo_info

GeoCoordinates

Los socios proporcionaron información geográfica del comercio.

processing_status

ProcessingStatus

Estado de procesamiento del comercio.

booking_status

BookingStatus

Estado relacionado con la integración de reservas de extremo a extremo.

waitlist_status

WaitlistStatus

Estado relacionado con la integración de la lista de espera.

geo_match

PlaceInfo

Coincide con la ubicación geográfica de este comercio. Estará vacío si el comercio no tiene coincidencias geográficas.

local_services_match

LocalServicesMatchInfo

Anuncios de Servicios Locales para este comercio. Estará vacío si no es un comercio de servicio local o no coincide con ningún proveedor.

direct_urls[]

DirectUrl

Una lista de URLs para demostrar el contenido del inventario actual del comercio. Ten en cuenta que esto no significa que el inventario realmente se esté publicando y que la URL puede ser diferente de las que son visibles de forma pública.

BookingStatus

Estado relacionado con la integración de reservas de extremo a extremo.

Campos
has_valid_future_inventory

bool

Verdadero si el comercio tiene inventario durante los próximos 30 días. No garantiza que el comercio realmente se publique.

DirectUrl

URL en la que se muestra el comercio.

Campos
type

UrlType

Es el tipo de esta URL.

url

string

URL en la que puede aparecer este comercio.

UrlType

Es el tipo de URL que aparece.

Enumeraciones
URL_TYPE_UNSPECIFIED No se especifica.
BOOKING URL de reserva de extremo a extremo.
WAITLIST URL de la lista de espera de extremo a extremo.
LOCAL_SERVICES URL de Servicios Locales de Google.

LocalServicesMatchInfo

Información de coincidencia de los Servicios Locales de Google (solo se establece para los comercios de Servicios Locales).

Campos
matched_providers[]

MatchedProvider

Proveedores de servicios coincidentes. Un comercio puede asociarse con varios proveedores de servicios.

MatchedProvider

Proveedor de Servicios Locales.

Campos
customer_id

int64

ID de cliente externo de Servicios Locales de Google.

categories[]

string

Categorías de servicios locales (verticales) P.ej., "plomero" y "carpet_cleaning".

PlaceInfo

Información de un lugar coincidente.

Campos
name

string

Es el nombre del lugar.

formatted_address

string

Dirección con formato en el idioma local.

place_id

string

Es el ID de Google Place de este lugar. Se puede utilizar para construir una URL de Google Maps o para recuperar más detalles del lugar. Consulta https://developers.google.com/places/web-service/place-id para obtener un ejemplo de uso.

ProcessingStatus

Estado de procesamiento del comercio.

Enumeraciones
PROCESSING_STATUS_UNSPECIFIED Estado sin especificar.
IN_PROGRESS Madden recibió el comercio, pero aún se está procesando. Los comercios con este estado no tendrán otro estado propagado.
COMPLETED Se calcularon los demás estados del comercio.

WaitlistStatus

Estado relacionado con la integración de la lista de espera.

Campos
has_valid_waitlist_service

bool

Es verdadero si el comercio tiene un servicio de lista de espera. No garantiza que el comercio realmente se publique.

MoneyRange

Envoltorio para un rango de importe monetario que podría ser delimitado o no delimitado. Se requiere, al menos, uno de los valores min_amount y max_amount.

Campos
min_amount

Money

Importe mínimo.

max_amount

Money

Importe máximo

NoShowFee

Es una tarifa que se puede cobrar a un usuario si realiza una reserva, pero no se presenta a la cita.

Campos
fee

Price

Es el importe que se le puede cobrar al usuario si no se presenta a su reserva.

fee_type

PriceType

Define cómo se determina la tarifa a partir de la disponibilidad.

Order

Es un pedido de citas del servicio que ofrece un comercio.

Campos
name

string

Nombre del recurso del pedido: partners/{partner ID}/orders/{order ID}

client_information

ClientInformation

Información personal del cliente que realiza el pedido.

payment_information

PaymentInformation

Información sobre las transacciones de pago relacionadas con el pedido.

merchant_id

string

Es el ID del comercio al que pertenecen todos los servicios de este pedido.

item[]

LineItem

Son las líneas de pedido de este pedido.

OrderOnlineMetadata

Metadatos de un vínculo de acción de pedido en línea.

Campos
fulfillment_option[]

FulfillmentOption

Opciones de entrega disponibles para un vínculo de acción de pedido en línea.

PaymentInformation

Son los detalles del pago relacionados con una reserva.

Campos
prepayment_status

PrepaymentStatus

Es el estado del prepago de la reserva. Si el campo prepayment_status se establece en PREPAYMENT_PROVIDED o PREPAYMENT_REFUNDED, el campo payment_transaction_id contendrá el ID de transacción único asociado.

payment_transaction_id

string

Es el identificador único de una transacción de pago asociada con la reserva. Este campo estará vacío si no es aplicable.

PaymentOption

Es una opción de pago, que se puede utilizar para pagar los servicios proporcionados por un comercio. Las opciones de pago se pueden compartir entre varios comercios (p. ej., aquellos que pertenecen a la misma cadena).

Campos
payment_option_id

string

Este ID se utiliza para identificar esta opción de pago.

Este ID es global, por lo que se aplica a todo el agregador. Esto implica que, si se reutiliza en varios comercios, un mismo usuario podrá pagar con la opción de pago correspondiente en todos esos comercios.

Cuando se reutiliza un ID en varios comercios y se actualiza cualquier valor de una opción de pago en uno de ellos, también se actualizarán todas las demás opciones de pago con el mismo ID en los otros comercios. Por lo tanto, se recomienda que todas las opciones de pago que compartan el mismo ID siempre se actualicen a valores idénticos para evitar cualquier posibilidad de comportamientos no esperados.

name

string

Es el nombre de la opción de pago. Puede ser visible para el usuario.

description

string

Es una descripción de la opción de pago. Puede ser visible para el usuario.

price

Price

Es el precio de la opción de pago.

tax_rate

TaxRate

Es la tasa impositiva de esta opción de pago. Si está presente, este campo anula cualquier valor de tax_rate especificado en el comercio o servicio. Un mensaje vacío (es decir, tax_rate { }) restablecerá la tasa impositiva a cero.

payment_option_type

PaymentOptionType

Es el tipo de esta opción de pago. Uso único para las compras ocasionales, usos múltiples para los paquetes y uso ilimitado para las membresías.

session_count

int64

Indica la cantidad de sesiones para las que se puede usar esta opción de pago. Válido solo para sesiones múltiples y paquetes, donde el valor debe ser superior a 1.

purchase_interval

TimeRange

La opción de pago se puede comprar dentro de este intervalo.

valid_interval

TimeRange

La opción de pago se puede utilizar dentro de este intervalo (p. ej., un precio especial durante enero de 2017). Si está presente, este campo anula cualquier valor en valid_duration y activation_type.

valid_duration

Duration

Es la duración de la validez de la opción de pago (p. ej., una membresía de 30 días).

activation_type

ActivationType

Define cómo se determina la fecha de inicio de la validez de esta opción de pago.

user_restriction

UserPurchaseRestriction

Restringe los usuarios aptos para hacer compras utilizando esta opción de pago. Se puede usar para restringir una opción de pago promocional a un subconjunto de usuarios. Si no se establece, todos los usuarios serán aptos.

ActivationType

Define cómo se determina la fecha de inicio para la validez.

Enumeradores
ACTIVATION_TYPE_UNSPECIFIED No se utiliza.
ACTIVATION_ON_PURCHASE La validez comienza en el momento de la compra.
ACTIVATION_ON_FIRST_USE La validez comienza cuando la opción de pago se utiliza por primera vez.

PaymentOptionType

Es un tipo de opción de pago.

Enumeradores
PAYMENT_OPTION_TYPE_UNSPECIFIED No se utiliza.
PAYMENT_OPTION_SINGLE_USE La opción de pago solo se puede utilizar una vez.
PAYMENT_OPTION_MULTI_USE La opción de pago se puede utilizar si su recuento de sesiones es superior a 0.
PAYMENT_OPTION_UNLIMITED La opción de pago se puede utilizar dentro de su período de validez. No aplica el recuento de sesiones.

PaymentProcessorConfig

Es una configuración de un procesador de pagos, que se define individualmente para cada comercio.

Campos
processor

Processor

Define el socio del procesador de pagos al que se aplica esta configuración.

public_key

string

Es la clave utilizada para identificar a este comercio con el procesador de pagos.

Para obtener información sobre Stripe, consulta https://stripe.com/docs/dashboard#api-keys. Para obtener información sobre Braintree, consulta https://articles.braintreepayments.com/control-panel/important-gateway-credentials.

version

string

Es el número de versión de la API que se envía al procesador de pagos junto con las solicitudes de pago.

Processor

Define un socio del procesador de pagos específico.

Enumeradores
PROCESSOR_UNSPECIFIED No se utiliza.
PROCESSOR_STRIPE Es una configuración de pagos con Stripe.
PROCESSOR_BRAINTREE Es una configuración de pagos con Braintree.

PaymentRestrictions

Son las restricciones relacionadas con las formas de pago que acepta este comercio.

Campos
credit_card_restrictions

CreditCardRestrictions

Son las restricciones relacionadas con las tarjetas de crédito que acepta este comercio. Asumimos que se aceptan todas las tarjetas de crédito si no se establece este campo. Ten presente que la lista de tarjetas admitidas para CreditCardType aumentará con el transcurso del tiempo, lo que significa que, si dejas este campo vacío, la configuración quedará sujeta a cambios futuros.

PerOrderFee

Son las tarifas que se deben pagar una vez por pedido, sin importar la cantidad de entradas.

Campos
delivery_fee

Price

Es una tarifa que puede variar según el método de entrega.

processing_fee

Price

Es una tarifa para procesar la forma de pago del usuario.

PerTicketFee

Son las tarifas que se deben pagar por cada entrada que compre el usuario.

Campos
service_charge

Price

Es un cargo adicional que se cobra por el servicio.

facility_fee

Price

Es una tarifa que se destina al lugar o la instalación.

taxes

Price

Impuestos por entrada.

PostalAddress

Es la dirección de un cliente o una empresa.

Campos
address_country

string

El país, especificado con el código de país ISO 3166-1 alpha-2, p.ej., “US” (obligatorio)

address_locality

string

La localidad, p.Ej., "Mountain View". (obligatoria)

address_region

string

La región, p.Ej., "CA". Este campo solo es obligatorio en los países donde la región suele formar parte de la dirección. (opcional)

postal_code

string

El código postal, p.Ej., "94043". (obligatoria)

street_address

string

La dirección, p.Ej., "1600 Amphitheatre Pk acuerdo". (Obligatorio)

PrepaymentStatus

Es el estado del prepago de una reserva.

Enumeraciones
PREPAYMENT_STATUS_UNSPECIFIED Si no se especifica, la configuración predeterminada será PREPAYMENT_NOT_PROVIDED.
PREPAYMENT_PROVIDED La tarifa de la reserva se pagó por adelantado.
PREPAYMENT_NOT_PROVIDED La tarifa de la reserva no se pagó por adelantado.
PREPAYMENT_REFUNDED Antes la tarifa era del tipo PREPAYMENT_PROVIDED, pero ahora se reembolsó.

Price

Es el precio de un servicio o una tarifa.

Campos
price_micros

int64

Es el precio en microunidades de la moneda. Las fracciones de la unidad de moneda más pequeña se redondearán al número entero par más cercano. Por ejemplo, los siguientes valores se redondearán de la siguiente manera: 2.5 centavos a 2 centavos, 3.5 centavos a 4 centavos, 0.5 centavos a 0 centavos y 2.51 centavos a 3 centavos.

currency_code

string

Es la moneda del precio que se define en la norma ISO 4217.

pricing_option_tag

string

Es una cadena opcional y opaca que identifica la opción de precio asociada con el precio extendido.

PriceInterpretation

Describe cómo se debe interpretar un precio y cómo se debe mostrar al usuario.

Enumeraciones
PRICE_INTERPRETATION_UNSPECIFIED Si no se especifica la interpretación del precio, la configuración predeterminada será EXACT_AMOUNT.
EXACT_AMOUNT

Se utiliza cuando el precio se debe interpretar como un valor específico.

Ejemplos: USD 20 por una clase de yoga; USD 15 por un corte de cabello para niños

STARTS_AT

Se utiliza cuando el precio de un servicio varía, pero se conoce un importe mínimo que se muestra a los consumidores. Los consumidores pueden tomar decisiones que aumenten el precio.

Ten presente que cualquier servicio que use esta opción de PriceInterpretation debe utilizar NOT_SUPPORTED para PrepaymentType.

Ejemplos: USD 30 para el servicio de peluquería para perros, pero las opciones adicionales de los consumidores pueden aumentar el precio

NOT_DISPLAYED

Se utiliza cuando el precio de un servicio varía y no se muestra de antemano ninguna información sobre esto a los consumidores.

Ten presente que cualquier servicio que use esta opción de PriceInterpretation debe utilizar NOT_SUPPORTED para PrepaymentType y tener el campo Price vacío.

Ejemplos: Una consulta sobre un servicio para el hogar

PriceType

Define cómo se determina un precio total a partir de una disponibilidad.

Enumeraciones
FIXED_RATE_DEFAULT

El precio es por un importe fijo. Este es el valor predeterminado si no se establece el campo.

Ejemplos: Un depósito de USD 50 para reservar una mesa o una tarifa por no presentarse de USD 20 para una clase de yoga

PER_PERSON

El precio indicado es por persona, y el precio total se calcula de acuerdo con el tamaño de grupo que se especifica entre los recursos (Resources) como price_micros × party_size. Si se utiliza un precio PER_PERSON, este debe ir acompañado de un tamaño de grupo entre los recursos de disponibilidad. De lo contrario, se utilizará un tamaño de grupo equivalente a una persona.

Ejemplo: Entradas a un museo de USD 10 por persona

QuantitativeValue

Unión para un valor numérico que puede ser un rango o un valor fijo. Ejemplos de QuantitativeValue: * Valor singular: value: 10.5 * Rango delimitado: value_range {min_value: 5.5, max_value 10.5} * Límite inferior: value_range {min_value: 5.5} * Límite superior: value_range {max_value: 10.5}

Campos
Campo de unión value_options. (obligatorio) value_options puede ser solo una de las siguientes opciones:
value

double

Un valor único. Por ejemplo: 5.6

value_range

RangeValue

Un rango de valores que también pueden ser abiertos o delimitados. Ejemplos: * Al menos 5.5 * Como máximo 5.5 * 5.5 a 6.5

RangeValue

Rango de valores de modo que min_value < max_value Se requiere al menos uno de los siguientes valores: min_value y max_value.

Campos
min_value

double

Valor mínimo.

max_value

double

Valor máximo

Rating

Define la calificación de una entidad.

Campos
value

double

Es el valor de calificación promedio (obligatorio cuando number_of_ratings es superior a 0). El valor debe estar en el rango de [1, 5] y se puede omitir solo si number_of_ratings es cero.

number_of_ratings

uint64

Es la cantidad de calificaciones que se usaron para calcular el valor (obligatorio).

RelatedMedia

Son las fotos relacionadas con este servicio. Google rastreará estos medios para asegurarse de que se les muestren correctamente a los usuarios finales. (Opcional)

Campos
url

string

Es la URL de esta fuente de contenido multimedia. Google rastreará el contenido multimedia alojado en esta URL.

type

MediaType

Es el tipo de esta fuente de contenido multimedia.

localized_caption

Text

Es la leyenda del contenido multimedia compatible con i18n. Solo se admite texto sin formato. Se quitarán todos los componentes HTML. (Opcional)

attribution

Attribution

Es la información de atribución sobre la fuente del contenido multimedia. Ten presente que este campo se debe establecer si es obligatorio mostrar la atribución con el contenido multimedia para dar crédito a un fotógrafo o una agencia. (Opcional)

caption
(deprecated)

string

Este campo es obsoleto, por lo que es preferible que utilices localized_caption.

Attribution

Es la información de atribución de este contenido multimedia.

Campos
localized_text

Text

Es el texto para dar crédito al fotógrafo o a la agencia compatible con i18n. Este texto se mostrará junto con el contenido multimedia de origen. Ten presente que solo se admite texto sin formato para este campo. Se quitarán los componentes HTML (no se admite la atribución basada en hipervínculos).

text
(deprecated)

string

Este campo es obsoleto, por lo que es preferible que utilices localized_text.

MediaType

Es una enumeración para indicar el tipo de esta fuente de contenido multimedia. Solo se admiten fotos. Comunícate con el equipo de Reserva con Google si necesitas que se admita otro contenido multimedia además de las fotos.

Enumeraciones
TYPE_UNSPECIFIED No se utiliza.
PHOTO Indica que el contenido multimedia proporcionado por la URL es una foto.

ReplaceServiceAvailabilityRequest

Es la solicitud para reemplazar la disponibilidad de un servicio (Service).

Campos
service_availability

ServiceAvailability

La disponibilidad del servicio que se usa para reemplazar los existentes.

RequireCreditCard

Define si se requiere una tarjeta de crédito para programar una cita.

Enumeraciones
REQUIRE_CREDIT_CARD_UNSPECIFIED El requisito de la tarjeta de crédito no se especifica de forma explícita, y el comportamiento es idéntico a aquel definido en CONDITIONAL.
REQUIRE_CREDIT_CARD_CONDITIONAL Google requerirá una tarjeta de crédito para la reserva si se cumple alguna de las siguientes condiciones: * La disponibilidad tiene un precio y se utiliza REQUIRED para prepayment_type. * Se establece el campo de depósito.
REQUIRE_CREDIT_CARD_ALWAYS Siempre se requiere una tarjeta de crédito para reservar esta disponibilidad, sin importar los valores de otros campos.

Resources

Los recursos se utilizan para distinguir los espacios disponibles entre sí cuando hay diferentes miembros del personal o salas como parte del mismo servicio. Pueden coexistir varios horarios disponibles y diversos intervalos de tiempo para el mismo servicio cuando tienen recursos diferentes.

Campos
staff_id

string

Es el ID opcional para un miembro del personal que proporciona el servicio. Este campo identifica a este miembro en todos los comercios, servicios y registros de disponibilidad. También debe ser estable en el tiempo para permitir la correlación con reservas anteriores. Este campo debe estar presente si se establece el campo staff_name.

staff_name

string

Es un nombre opcional de un miembro del personal que proporciona el servicio. Este campo se mostrará a los usuarios que realicen una reserva y debe ser legible, en contraposición a lo que sucede con el identificador opaco. Este campo debe estar presente si se establece el campo staff_id.

room_id

string

Es un ID opcional para la sala donde se proporcionará el servicio. Este campo identifica la sala en todos los comercios, servicios y registros de disponibilidad. También debe ser estable en el tiempo para permitir la correlación con reservas anteriores. Este campo debe estar presente si se establece el campo room_name.

room_name

string

Es un nombre opcional para la sala donde se proporcionará el servicio. Este campo se mostrará a los usuarios que realizan una reserva y debe estar expresado en lenguaje natural. Es decir, no debe ser un identificador opaco. (Opcional, pero obligatorio si se incluye el campo de la opción Room_id) En el comedor, el nombre de una sala solo debe usarse para las áreas de descanso, como el bar o el patio, y no para menús con precios fijos, actividades especiales ni ningún otro valor que no sea de habitación (como reservas o cenas). Se recomienda que el área de descanso predeterminada no tenga una sala de reuniones asociada.

party_size

int32

Este campo solo es aplicable a restaurantes: indica el tamaño de la fiesta que se puede incluir durante este espacio de tiempo disponible. Un restaurante se puede asociar con varios horarios disponibles para la misma hora, cada uno con un tamaño de grupo diferente en party_size si, por ejemplo, la reserva puede acomodar 2, 3 o 4 personas.

SchedulingRules

Son las reglas de programación de un servicio.

Campos
min_advance_online_canceling

int64

Es el aviso anticipado mínimo en segundos que se requiere para cancelar una cita programada en línea. (Opcional)

late_cancellation_fee
(deprecated)

Price

Es la tarifa que se cobra por cancelar una reserva dentro del período mínimo de aviso anticipado.

noshow_fee
(deprecated)

Price

Es la tarifa que se cobra por no presentarse sin cancelar la reserva.

admission_policy

AdmissionPolicy

Es la política de admisión que se aplica a este servicio. Si no se establece, la configuración predeterminada será TIME_STRICT. (Opcional)

cancellation_policy

CancellationPolicy

Es la política de cancelación de las reglas de programación. (Obligatorio para la vertical Actividades)

Campo de unión min_booking_buffer. Es la duración (en segundos) desde el momento en el que se puede realizar la última reserva hasta que comienza o finaliza el horario disponible.

Si se establece el campo "min_advance_booking", el último horario que se puede reservar se calcula de la siguiente manera: (<hora de inicio del horario disponible> - "min_advance_booking"). Si se establece el campo "min_booking_buffer_before_end_time", la hora en la que se puede hacer la última reserva se calcula de la siguiente manera: (<hora de finalización del horario disponible> - "min_booking_buffer_before_end_time"). Ten presente que el valor del campo "min_booking_buffer_before_end_time" debe ser positivo si se establece. Si ambos campos se dejan sin establecer, el horario disponible se podrá reservar hasta su hora de inicio. Si se configuran ambos campos, solo se elegirá un valor, mientras que el otro se ignorará. No podemos predecir de manera confiable qué valor se elige.

Ejemplos:

  • Una peluquería en la que los turnos para cortarse el cabello se deben reservar, al menos, 1 hora antes de la hora de inicio: 'scheduling_rules{ min_advance_booking: 3600 ...}`

  • Un museo en el que la última entrada se puede comprar 30 minutos antes del cierre: 'scheduling_rules{ min_booking_buffer_before_end_time: 1800 ...}'

  • Un cine en el que la entrada se debe comprar antes de la hora de inicio: 'scheduling_rules{ ...}' (deja este campo vacío) (opcional) El campo min_booking_buffer solo puede ser una de las siguientes opciones:

min_advance_booking

int64

Es la duración (en segundos) desde el momento en que se puede realizar la última reserva hasta que comienza el horario disponible.

min_booking_buffer_before_end_time

int64

Es la duración (en segundos) desde el momento en el que se puede realizar la última reserva hasta que finaliza el horario disponible. Si se establece este campo, "admission_policy" se debe configurar en TIME_FLEXIBLE para indicar que los usuarios pueden utilizar las entradas compradas después de que comience el horario disponible.

AdmissionPolicy

Es la política de admisión de este servicio.

Enumeraciones
ADMISSION_POLICY_UNSPECIFIED No se utiliza.
TIME_STRICT Los clientes deben presentarse a la hora de inicio del horario disponible, y el servicio debería terminar a la hora de finalización de dicho horario. Ejemplos de casos prácticos de TIME_STRICT: * Una visita guiada que empieza a las 9 a.m. y termina a las 12 p.m., en la que se requiere que todos los asistentes lleguen a la hora de inicio * Una reserva para cortarse el cabello el sábado a las 3 p.m. que durará unos 30 minutos * Una clase de gimnasia que empieza a las 6 p.m. y termina a las 8 p.m.
TIME_FLEXIBLE

Para utilizar esta reserva, los clientes pueden llegar en cualquier momento entre las horas de inicio y finalización del horario disponible.

Ejemplos de casos prácticos de TIME_FLEXIBLE: * Una entrada de museo que se puede utilizar a cualquier hora en la fecha de compra * Una entrada por la tarde a un parque de atracciones que se puede utilizar de 12 p.m. a 9 p.m.

TIMED_ENTRY_WITH_FLEXIBLE_DURATION

Los clientes deben llegar al comercio a la hora de inicio del horario disponible, pero pueden retirarse cuando lo deseen.

Por ejemplo, en el caso de la entrada al museo, si está programada para las 10 a.m., el usuario debe estar allí a esa hora. La hora de inicio de los horarios disponibles para este servicio representa la hora de entrada designada. Sin embargo, la hora de finalización solo se utiliza como una clave para identificar el horario disponible para la reserva.

Service

Es la información sobre un servicio que proporciona el comercio, p. ej., cortes de cabello.

Campos
name

string

El nombre del recurso del servicio, que tiene el formato partners/{partner_id}/merchants/{merchant_id}/services/{service_id}.

service_name

string

Es el nombre del servicio, p. ej., "Cortes de cabello para hombres". Este campo es obsoleto; utiliza localized_service_name en su lugar.

localized_service_name

Text

Es el nombre del servicio, p. ej., "Cortes de cabello para hombres". Posiblemente se proporcione en varias configuraciones regionales.

description

string

Es la descripción del servicio que se muestra al usuario. Este campo es obsoleto; utiliza localized_description en su lugar.

localized_description

Text

Es la descripción del servicio que se muestra al usuario.

Este campo admite texto sin formato y similar al de HTML. A diferencia de las secciones de texto sin formato, aquí se pueden crear diseños personalizados con encabezados, párrafos, listas y algunas etiquetas de frase. Lee atentamente las siguientes instrucciones y notas para asegurarte de crear la mejor experiencia del usuario.

Etiquetas de formato admitidas similares a las que se utilizan en HTML:

Etiquetas de encabezado: <h1>, <h2>, <h3>, <h4>, <h5>, <h6>
Las etiquetas de encabezado se pueden utilizar para mostrar títulos y subtítulos. Por ejemplo, <h1>Itinerario</h1> mostrará el texto intercalado como el encabezado más importante de la sección. Ten presente que se ignorarán todas las etiquetas, los estilos o los atributos HTML internos. Por ejemplo, <h1 style=".."> se tratará de la misma manera que <h1>. Solo se conservará el texto puro.

Etiqueta de párrafo: <p>
La etiqueta de párrafo se puede utilizar para destacar una introducción o contenidos detallados. Se ignorarán todas las etiquetas, los estilos o los atributos internos, con algunas excepciones: <br>, <strong> y <em>. Consulta la sección de etiquetas de frase que se encuentra a continuación para obtener más detalles.

Etiquetas de lista: <ul>, <ol> y <li>
La etiqueta <ul> se puede utilizar con la etiqueta <li> para mostrar listas sin ordenar, y la etiqueta <ol> se puede usar con la etiqueta <li> para mostrar listas ordenadas. Resultan útiles para mostrar listas de tareas, programas o cualquier otra lista que se ajuste a tus casos prácticos.
Ejemplo: Para mostrar una lista de las características de un viaje en crucero:
<ol>
<li>Una maravillosa vista al mar y oportunidades para jugar con la vida silvestre.</li>
<li>Servicios y arreglos de viaje cuidadosamente diseñados.</li>
<li>Precio más bajo garantizado.</li>
</ol>
Tenga en cuenta que solo <li> niños menores de <ul> o <ol> las etiquetas se convertirán. Se descartarán todos los demás elementos secundarios. Además, se ignorarán las etiquetas, los atributos y los estilos internos. Solo se conservará el contenido de texto puro.

Etiqueta de división: <div>
Todas las etiquetas internas que admite la etiqueta <div> se analizarán según las reglas antes mencionadas, es decir, que esta etiqueta por sí sola no implica ninguna agrupación ni sangría. Además, se ignorarán todos los atributos y estilos internos.

Etiquetas de frase: <br>, <strong> y <em>:
Solo se admiten las tres etiquetas antes mencionadas. La etiqueta <br> se puede utilizar para dividir las líneas de los párrafos, mientras que las etiquetas <strong> y <em> se pueden usar para destacar texto importante. Se ignorará cualquier otra etiqueta de frase.

Etiquetas no admitidas:

  • No se permiten las etiquetas <html>, <header> ni <body>.
  • No se admiten otras etiquetas que no sean las mencionadas arriba (por ejemplo, <table>, <td>, etc.).
    Las URL, las anclas y los vínculos se quitarán y nunca se mostrarán a los usuarios finales. Si deseas incluir fotos para crear una experiencia del usuario enriquecida, utiliza el campo "related_media" que se menciona a continuación para enviar las URL de tus fotos.

Notas importantes:

  • Usa solamente las etiquetas admitidas que se mencionan arriba, porque el contenido que aparezca entre etiquetas no compatibles se quitará, y esto podría generar una experiencia del usuario no deseada.
  • Evita las estructuras muy anidadas, como aquellas con más de 3 niveles de anidamiento diferentes en sus encabezados o listas. Mantener una estructura plana, simple y directa ayuda a crear una mejor experiencia del usuario.
  • Si los diseños admitidos actualmente no son suficientes para tus casos prácticos, comunícate con el equipo de Reserva con Google.
  • El tamaño máximo recomendado es de 32,000 caracteres.
price

Price

Es el precio del servicio.

price_interpretation

PriceInterpretation

Describe cómo se interpreta el precio y cómo se lo muestra al usuario. Puede utilizarse en cualquier vertical, excepto Gastronomía y Actividades, para configurar de qué manera mostrar el precio del servicio.

rules

SchedulingRules

Reglas para reservar o cancelar una cita.

prepayment_type

PrepaymentType

Indica si el prepago es obligatorio, opcional o no se admite.

prepayment_terms

PrepaymentTerms

Condiciones cuando se completa el prepago.

form[]
(deprecated)

ServiceIntakeForm

Obsoleta. Usa intake_form y per_ticket_intake_form.

intake_form

ServiceIntakeForm

Es un formulario que le solicita información adicional al usuario cuando reserva este servicio. (Opcional)

per_ticket_intake_form

ServiceIntakeForm

Es un formulario que le solicita información adicional al usuario cuando reserva este servicio. Se debe completar una vez para cada entrada que reserve el usuario. (Opcional)

tax_rate

TaxRate

Es la tasa impositiva del servicio. Si está presente, este campo anula cualquier valor de tax_rate especificado a nivel del comercio. Un mensaje vacío (es decir, tax_rate { }) restablecerá la tasa impositiva a cero.

payment_option_id[]

string

Es una lista de los ID que hacen referencia a las opciones de pago que se pueden utilizar para pagar este servicio. Las opciones de pago reales se definen a nivel del comercio y también se pueden compartir entre varios de ellos.

deposit

Deposit

Define cómo se le puede cobrar un depósito al usuario. Anula el depósito del servicio si se especificó uno. Si configuras un mensaje Deposit vacío, se quitará cualquier depósito a nivel del servicio. (Opcional)

no_show_fee

NoShowFee

Define una tarifa por no presentarse que se le puede cobrar al usuario. Anula la tarifa por no presentarse del servicio si se especificó una. Si configuras un mensaje NoShowFee vacío, se quitará cualquier tarifa por no presentarse a nivel del servicio. (Opcional)

require_credit_card

RequireCreditCard

Indica si el usuario debe proporcionar una tarjeta de crédito para reservar este servicio. Este campo se puede anular a nivel de la disponibilidad. (Opcional)

type

ServiceType

Es el tipo predefinido de este servicio. (Opcional)

ticket_type[]

TicketType

Son los tipos de entrada que se pueden reservar o comprar para este servicio, siempre y cuando se admitan las entradas. (Opcional)

related_media[]

RelatedMedia

Son las fotos relacionadas con este servicio. Google rastreará y almacenará el contenido multimedia para asegurarse de que se muestren a los usuarios finales de la manera más eficiente. (Opcional)

service_attribute_value_id[]

ServiceAttributeValueId

Son los valores del atributo de servicio que se aplican a este servicio (opcional). Cada servicio puede tener cero o más valores para cada atributo de servicio definido en el comercio correspondiente. (Opcional)

waitlist_rules

WaitlistRules

Reglas para unirse a la lista de espera

ticketing_vertical_specific_data

TicketingVerticalSpecificData

Es la información adicional exclusiva de la vertical Entradas para eventos. (Opcional)

integration_type

IntegrationType

Es la profundidad de la integración que admitimos para este servicio. (Opcional) No es relevante para los socios con una integración inicial. La opción de extremo a extremo siempre estará inhabilitada para estos socios.

per_order_fee

PerOrderFee

Son las tarifas a nivel del pedido por la compra de este servicio. (Opcional)

tours_and_activities_content

ToursAndActivitiesContent

Son los campos de contenido específicos de la categoría Visitas guiadas y actividades.

location[]

Location

Son las ubicaciones relacionadas con este servicio. NOTAS IMPORTANTES: Si hay varias ubicaciones visitadas relacionadas con este servicio o si START_LOCATION difiere de VISITED_LOCATION, se debe especificar START_LOCATION. Ejemplo: - Para una visita guiada en bicicleta que incluye tres lugares en su recorrido, se debe especificar el de partida. - Para una visita guiada en autobús en la que hay que reunirse en el vestíbulo de un hotel antes de dirigirse al lugar de interés, se debe especificar el punto de encuentro.

rating

Rating

Es la calificación de los usuarios para este servicio como una métrica agregada de todas las opiniones.

home_service_data

HomeServiceData

Información adicional exclusiva de la vertical de servicio a domicilio. (opcional)

virtual_session

VirtualSession

Opcional. Información sobre la sesión virtual. Es necesario para habilitar los servicios virtuales.

direct_merchant_payment

DirectMerchantPayment

Opcional. Información adicional que se debe agregar si el servicio requiere que el usuario pague directamente al comercio. NOTA IMPORTANTE: RwG no se involucrará en esta transacción. Es obligatorio si se define virtual_session y el servicio no es gratuito o prepayment_type NO se establece como REQUIRED.

PrepaymentTerms

Información específica sobre cuándo se completa el prepago.

Campos
charge_timing

ChargeTiming

Indica cuándo se generará el cargo en relación con la hora de la compra.

charge_time_before_start_time_sec

int64

Tiempo en segundos antes de la hora de inicio del servicio en el que se le cobra al usuario por el pago. Este campo solo debe establecerse cuando ChargeTiming es CHARGE_LATER.

ChargeTiming

Es una enumeración para especificar cuándo se producirá el cargo en relación con la hora de la compra.

Enumeraciones
CHARGE_TIMING_UNSPECIFIED No se utiliza.
CHARGE_NOW Se le cobrará al cliente de inmediato.
CHARGE_LATER Se le cobrará al cliente más tarde.

PrepaymentType

Es una enumeración para indicar el tipo de prepago.

Enumeraciones
PREPAYMENT_TYPE_UNSPECIFIED De forma predeterminada, supondremos que la opción de prepago está establecida en NOT_SUPPORTED.
REQUIRED El usuario debe pagar este servicio en el momento de la reserva.
OPTIONAL El usuario puede optar por pagar por adelantado este servicio en el momento de la reserva o más adelante, pero esto no es obligatorio para hacer la reserva.
NOT_SUPPORTED No se admite la opción de prepago para este servicio.

ServiceType

Son los tipos de servicio predefinidos.

Enumeraciones
SERVICE_TYPE_UNSPECIFIED No se utiliza.
SERVICE_TYPE_DINING_RESERVATION Indica una reserva en un restaurante.
SERVICE_TYPE_FOOD_ORDERING Pedidos de comida, ya sea a domicilio, para llevar o ambos.
SERVICE_TYPE_FOOD_DELIVERY Envío de comidas.
SERVICE_TYPE_FOOD_TAKEOUT Comida para llevar.
SERVICE_TYPE_EVENT_TICKET Indica una entrada para eventos.
SERVICE_TYPE_TRIP_TOUR Indica una visita guiada.
SERVICE_TYPE_APPOINTMENT Es un servicio que proporciona citas o clases. Se recomienda para servicios de (1) salud y bienestar, (2) spa y belleza y (3) consultas y evaluaciones financieras. Obtén información sobre los tipos de servicios admitidos: https://developers.google.com/maps-booking/guides/end-to-end-integration/overview
SERVICE_TYPE_ONLINE_APPOINTMENT Servicio que proporciona citas en línea para una clase o sesión que será completamente virtual. Se debe configurar si se habilitan las reservas de servicios virtuales.
SERVICE_TYPE_SHOPPING Servicio que permite a los usuarios realizar compras en un comercio determinado. Puede ser con entrega o retiro.

ServiceAttribute

Los atributos de servicio son categorías definidas por el socio que describen los servicios de un comercio. Por ejemplo, un banco podría definir un atributo de servicio "Tipo de cuenta" con valores como "Personal" y "Empresarial", mientras que un salón de belleza podría establecer un atributo de servicio "Tipo de servicio" con valores como "Corte", "Tintura" y "Peinado".

Campos
attribute_id

string

Un identificador que identifica de manera inequívoca este atributo de servicio entre otros para el mismo comercio, p.ej., "account-type".

attribute_name

string

Un nombre visible para el usuario para este atributo, p.ej., “Tipo de cuenta”.

value[]

Value

Todos los valores posibles para este atributo de servicio.

Value

Representa un valor posible para un atributo de servicio en particular.

Campos
value_id

string

Un identificador que identifica de manera inequívoca este valor entre otros de este atributo de servicio, p.ej., "personales".

value_name

string

Es un nombre visible para el usuario correspondiente al valor, p.ej., "Personal".

ServiceAttributeValueId

Identifica un valor particular de un atributo de servicio que se aplicará a nivel del servicio.

Campos
attribute_id

string

Es el ID de un atributo, según se define en Merchant.service_attribute, p.ej., “service-type”.

value_id

string

Es el ID del valor de este atributo, p. ej., "haircut". Debe coincidir con un ID de value_id en la definición del atributo de servicio.

ServiceAvailability

Es una lista de los horarios disponibles, a quién se deben aplicar y cuándo.

Campos
name

string

Es el nombre de recurso del servicio al que se debe aplicar este código. Tiene este formato: partners/{partner_id}/merchants/{merchant_id}/services/{service_id}

start_time_restrict

Timestamp

Si se proporciona, consideraremos que las entidades de disponibilidad provistas corresponden a un resumen completo de [start_time_restrict, end_time_restrict]. Es decir, se borrará toda la disponibilidad existente si se cumple la siguiente condición:

   start_time_restrict <= availability.start_sec &&
   availability.start_sec < end_time_restrict

Si se establece un mensaje de duración, la condición se verá aún más restringida:

  availability.duration == duration_restrict

Si se establece un mensaje de resources_restrict, la condición se verá aún más restringida:

   availability.resources.staff_id == resources_restrict.staff_id &&
   availability.resources.room_id == resources_restrict.room_id

Estos campos suelen utilizarse para proporcionar una actualización completa de la disponibilidad en un período determinado.

Si se establece start_time_restrict, pero se deja end_time_restrict sin definir, se interpretará que el período en cuestión abarca desde start_time_restrict en adelante.

end_time_restrict

Timestamp

Si se establece end_time_restrict, pero se deja start_time_restrict sin definir, se interpretará que el período en cuestión abarca todo el período hasta end_time_restrict.

duration_restrict

Duration

Si se establece la duración, el alcance de la actualización se verá aún más restringido y solo abarcará la disponibilidad cuya duración coincida con aquella establecida.

resources_restrict

Resources

Si se establece resources_restrict, el alcance de la actualización se verá aún más restringido y solo abarcará este conjunto de recursos. Todos los campos de ID de los recursos deben coincidir exactamente.

availability[]

Availability

Es la nueva lista de horarios disponibles.

ServiceIntakeForm

Define un formulario de entrada que personaliza el servicio proporcionado por un comercio.

Campos
field[]

ServiceIntakeFormField

Son los campos que se mostrarán al usuario.

first_time_customers
(deprecated)

bool

Si es "true", este formulario se mostrará a los clientes nuevos. Este campo es obsoleto. Esta funcionalidad no se admite para los formularios de admisión.

returning_customers
(deprecated)

bool

Si es "true", este formulario se mostrará a los clientes habituales. Este campo es obsoleto. Esta funcionalidad no se admite para los formularios de admisión.

ServiceIntakeFormField

Define un campo que se incluye en un formulario de ServiceIntakeForm.

Campos
id

string

Es una string de un socio agregador que identifica de forma exclusiva un campo de formulario. Este ID debe ser el mismo que el que se incluya en la respuesta del campo de formulario correspondiente y debe ser único a nivel del servicio y por formulario de admisión de entrada. (Obligatorio)

type

FieldType

El tipo de este campo.

label

string

Es el texto que se le muestra al usuario para este campo. Este campo es obsoleto; utiliza localized_label en su lugar.

localized_label

Text

Es el texto que se le muestra al usuario para este campo. El campo se puede proporcionar en varias configuraciones regionales. (obligatorio)

value[]

string

Se establece solo si el tipo de campo es LOCATION_SEARCH. Utiliza el ID de "location_id" en el campo "location" para especificar el valor de ubicación.

choice_text[]

Text

Establece esta opción solo si el tipo de campo es MULTIPLE_CHOICE, CHECKBOXES o DROPDOWN. Se usa para enumerar posibles opciones.

is_required

bool

Indica si es obligatorio que el usuario proporcione una respuesta para este campo.

allow_custom_answer

bool

Indica si se permite un valor personalizado además de las respuestas predefinidas. Esto solo es aplicable cuando el tipo de campo es LOCATION_SEARCH. (opcional)

additional_option[]

Text

Son opciones adicionales que se proporcionaron además de los valores proporcionados. Solo es aplicable cuando el tipo de campo es LOCATION_SEARCH. P.ej., Además de la lista de ubicaciones proporcionada, otra opción disponible puede ser "Me comunicaré con el proveedor más tarde". (opcional)

ticket_type_restrict[]

string

Si solo se debe mostrar esta pregunta cuando el usuario reserva ciertos tipos de entrada, este campo se debería establecer como el conjunto de ID de tipos de entrada aplicables. Deja el campo vacío si la pregunta siempre es aplicable.

hint

Text

Es el texto de la sugerencia para la entrada, que aparece como un marcador de posición de texto. Esto solo es aplicable cuando el tipo de campo es SHORT_ANSWER o PARAGRAPH. (opcional)

FieldType

Es una enumeración para indicar el tipo de campo.

Enumeraciones
FIELD_TYPE_UNSPECIFIED Se ignorarán los campos de tipo desconocido o sin especificar.
SHORT_ANSWER Es un campo de entrada de texto de una sola línea.
PARAGRAPH Es un campo de entrada de texto de varias líneas.
MULTIPLE_CHOICE Es un conjunto de botones de selección que requiere que se elija una opción de entre muchas.
CHECKBOXES Se trata de uno o más elementos enumerados con casillas de verificación.
DROPDOWN Es una selección en un menú desplegable.
BOOLEAN Es un botón para responder Sí o No.

TaxRate

Es una tasa impositiva que se aplica cuando se le cobra un servicio al usuario. Se puede establecer por comercio o por servicio.

Campos
micro_percent

int32

Es una tasa impositiva en milésimas de un punto porcentual, lo que da 6 decimales de precisión. Por ejemplo, si la tasa impositiva es del 7.253%, este campo se debe establecer en 7253000.

Si este campo no se define o se establece en 0, el precio total que se cobra a un usuario por cualquier servicio provisto por este comercio es el precio exacto especificado en Service.price. Se supone que el precio del servicio está exento de impuestos o que ya incluye los impuestos aplicables. Los impuestos no se mostrarán al usuario como una línea de pedido separada.

Si este campo se establece en un valor distinto de cero, el precio total que se le cobrará a un usuario por cualquier servicio provisto por este comercio incluirá el precio del servicio más el impuesto calculado con la tasa impositiva proporcionada aquí. Las fracciones de la unidad monetaria más pequeña (por ejemplo, fracciones de un centavo) se redondearán al número entero más cercano. Los impuestos se mostrarán al usuario como un elemento de una sola línea aparte.

Terms

Es un conjunto de normas y lineamientos que se muestran al usuario para hacer una reserva a través de Reserva con Google.

Campos
url

string

Opcionalmente, la URL de los Términos y Condiciones.

text

string

Es el texto que se mostrará al usuario. Utiliza el campo localized_text que figura a continuación para las integraciones nuevas.

localized_text

Text

Es el texto localizado que se le mostrará al usuario.

Text

Es una carga útil de texto posiblemente localizado. Algunos campos de texto pueden incluir contenido con lenguaje de marcado.

Campos
value

string

Es un valor de texto en una configuración regional desconocida. Es obligatorio solo si el campo localized_value está vacío. La configuración regional de este valor puede depender del socio o del proveedor de servicios, por lo que no se debe suponer que es un idioma específico.

localized_value[]

LocalizedString

Son los valores de texto por configuración regional. Este campo es opcional.

TicketType

TicketType se utiliza para distinguir las entradas que tienen diferentes precios o disponibilidades debido a los distintos tipos de usuario, atributos de servicio o complementos/opciones.

Una entrada es la unidad mínima que se puede reservar para un servicio, como un cupo en un paseo de rafting, una entrada al museo o un alquiler de kayak doble de día completo.

Campos
ticket_type_id

string

El ID de entrada se utiliza para diferenciar los diferentes tipos de entrada del mismo servicio y solo se espera que sea único dentro de un servicio.

short_description

string

Es una descripción breve de este TicketType.

Puede mostrarse al usuario, p. ej., "adulto", "niño", "veterano", "fila J", etc. Este campo es obligatorio, por lo que cada tipo de entrada debe tener una descripción para que se muestre al usuario. Este campo es obsoleto; utiliza localized_short_description en su lugar.

localized_short_description

Text

Es una descripción breve de la compatibilidad de este TicketType con i18n.

Puede mostrarse al usuario, p. ej., "adulto", "niño", "veterano", "fila J", etc. Este campo es obligatorio, por lo que cada tipo de entrada debe tener una descripción para mostrarle al usuario. Se pueden proporcionar valores separados para cada configuración regional.

price

Price

Es el precio de una sola entrada de este tipo, sin incluir impuestos. Se aplicará a las entradas la tasa impositiva definida a nivel del servicio.

per_ticket_fee

PerTicketFee

Son las tarifas adicionales por la compra de esta entrada. (Opcional)

option_description

string

Es la descripción de cualquier opción adicional que este tipo de entrada represente, si corresponde. Este campo es obsoleto; utiliza localized_option_description en su lugar.

localized_option_description

Text

Es la descripción de cualquier opción adicional que este tipo de entrada represente, si corresponde. Se pueden proporcionar valores separados para cada configuración regional.

Las opciones adicionales son útiles cuando el tipo de entrada representa varias dimensiones.

Ejemplo 1: Para una entrada con los diferentes tipos "adulto" y "niño" y el idioma como una opción adicional, la lista de TicketType esperada sería la siguiente: - { ticket_type_id: "ticket_type_1" localized_short_description { value: "adulto" } localized_option_description { value: "inglés" } } - { ticket_type_id: "ticket_type_2" localized_short_description { value: "adulto" } localized_option_description { value: "español" } } - { ticket_type_id: "ticket_type_3" localized_short_description { value: "niño" } localized_option_description { value: "inglés" } } - { ticket_type_id: "ticket_type_4" localized_short_description { value: "niño" } localized_option_description { value: "español" } }

Ejemplo 2: Para un alquiler de kayak de varias horas con el complemento opcional de bolsa impermeable, el campo shortDescription podría ser "3 horas" y el campo optionDescription podría ser "con bolsa impermeable" o "sin bolsa impermeable": - { ticket_type_id: "ticket_type_1" localized_short_description { value: "2 horas" } localized_option_description { value: "inglés" } } - { ticket_type_id: "ticket_type_2" localized_short_description { value: "2 horas" } localized_option_description { value: "español" } } - { ticket_type_id: "ticket_type_3" localized_short_description { value: "3 horas" } localized_option_description { value: "inglés" } } - { ticket_type_id: "ticket_type_4" localized_short_description { value: "3 horas" } localized_option_description { value: "español" } }

Este campo es opcional, pero si cualquier tipo de entrada dentro del servicio tiene configurado este campo, esperamos que todos los demás tipos de entrada también lo tengan (se podría utilizar un campo option_description predeterminado). P. ej., la lista [{ticket_type_1, adulto, inglés}, {ticket_type_1, adulto, ''}] no es válida.

Solo se admiten dos etiquetas de formato HTML: y
. Están diseñadas para especificar opciones con un título y una descripción detallada, por ejemplo: "Asientos premium
. Esta opción ofrece ubicaciones en salas privadas, con asientos sumamente cómodos, TV privadas y servicio de comida y bebida en el lugar. Estos asientos ofrecen vistas pintorescas del campo".

TicketingVerticalSpecificData

Es la información adicional exclusiva de la vertical Entradas para eventos.

Campos
event_category

EventCategory

Es la categoría del evento. Se establece solo cuando el evento corresponde a una de las categorías predefinidas. (Opcional)

event_url

string

Es la URL del evento en el sitio web del socio. (Opcional)

entity[]

Entity

Es una lista de entidades relacionadas con el evento. (opcional)

event_attendance_mode

AttendanceMode

Obligatorio. El tipo de asistencia al evento.

event_virtual_location_url[]

string

Opcional. Es la URL en la que se puede mirar el evento.

event_organizer

Text

Opcional. Organizador que organiza el evento.

event_organizer_url

string

Opcional. URL del organizador que organiza el evento.

event_organizer_type

OrganizerType

Opcional. Es el tipo de organizador.

event_source_url[]

string

Obligatorio. Es la URL de las páginas en las que se puede encontrar la información o las descripciones del evento.

event_state

EventState

Opcional. Estado del evento.

AttendanceMode

El tipo de asistencia al evento.

Enumeraciones
ATTENDANCE_MODE_UNSPECIFIED No se especifica.
ONLINE Para eventos virtuales.
PHYSICAL Para eventos físicos.
PHYSICAL_ONLINE_MIXED Para eventos que son físicos y virtuales.

Entidad

Representa una entidad relacionada con el evento.

Campos
id

string

Es un identificador único de la entidad en la base de datos del socio. (Opcional)

name

string

Es el nombre de la entidad. (Obligatorio)

url

string

Es la URL de la página web que describe la entidad de manera clara. Esta es la página web de la entidad en el sitio web del socio, si corresponde. Para otras URL públicas de la entidad, utiliza relevant_url en public_identification_data. (Opcional)

entity_type

EntityType

Es el tipo de entidad. (Opcional)

entity_role

EntityRole

Es la función de la entidad en el evento. (Opcional)

public_identification_data

PublicIdentificationData

Son referencias públicas de la entidad. (Opcional)

EntityRole

Es la función de la entidad en el evento.

Enumeraciones
ENTITY_ROLE_UNSPECIFIED No se especifica.
ENTITY_ROLE_HEADLINER La entidad representa a una celebridad o al protagonista del evento.
ENTITY_ROLE_SUPPORTER La entidad representa a un artista secundario del evento.
ENTITY_ROLE_HOME_TEAM La entidad representa al equipo local del evento (deportivo).
ENTITY_ROLE_AWAY_TEAM La entidad representa al equipo visitante del evento (deportivo).

EntityType

Es el tipo de entidad. Nota: No tiene como objetivo constituir una ontología universal.

Enumeraciones
ENTITY_TYPE_UNSPECIFIED No se especifica. No lo utilices.
ENTITY_TYPE_PERFORMER La entidad representa al artista o grupo que actúa en un concierto o espectáculo. Solo se aplica cuando la categoría del evento es CONCERT o THEATRE.
ENTITY_TYPE_PLAYER La entidad representa al jugador o equipo deportivo en el evento. Solo se aplica cuando la categoría del evento es SPORTS.
ENTITY_TYPE_CONCERT_TOUR La entidad representa la gira a la que pertenece este evento. Solo se aplica cuando la categoría del evento es CONCERT.
ENTITY_TYPE_SPORTS_SERIES La entidad representa un torneo deportivo al que pertenece este evento. Solo se aplica cuando la categoría del evento es SPORTS.
ENTITY_TYPE_PLAY La entidad representa el tipo de obra (p. ej., musical, comedia, ballet, etc.) que se realiza en el evento. Solo se aplica cuando la categoría del evento es THEATRE.

EventCategory

Es un subconjunto de categorías de eventos para el que personalizamos la experiencia del producto. Nota: No tiene como objetivo constituir una ontología universal de eventos.

Enumeraciones
EVENT_CATEGORY_UNSPECIFIED No se especifica. No lo utilices.
EVENT_CATEGORY_CONCERT Hace referencia a conciertos.
EVENT_CATEGORY_SPORTS Hace referencia a eventos deportivos.
EVENT_CATEGORY_THEATRE Hace referencia a eventos teatrales.
EVENT_CATEGORY_EXHIBITS Hace referencia a exposiciones.
EVENT_CATEGORY_WORKSHOPS_AND_CLASSES Hace referencia a talleres y clases.

EventState

Estado del evento.

Enumeraciones
EVENT_STATE_UNSPECIFIED No se especifica.
SCHEDULED El evento está programado.
RESCHEDULED Se reprogramó el evento.
CANCELLED Se canceló el evento.
POSTPONED Se pospuso el evento.

OrganizerType

Es el tipo de organizador.

Enumeraciones
ORGANIZER_TYPE_UNSPECIFIED No se especifica.
PERSON Para un organizador que es una persona.
ORGANIZATION Para el organizador que es una organización.

PublicIdentificationData

Son los identificadores, las páginas web o cualquier otra fuente pública que hacen referencia a una entidad.

Campos
relevant_url[]

string

Es la URL pública de cualquier página web dedicada exclusivamente al tema. Esto puede incluir sitios web oficiales, discografías, plataformas de redes sociales, páginas de Wikipedia o IMDb, p. ej., https://www.discogs.com/artist/1124645-Taylor-Swift, https://www.wikidata.org/wiki/Q19320959 y https://twitter.com/acmilan. (opcional)

musicbrainz_id

string

Es el identificador de MusicBrainz de 36 caracteres correspondiente al artista o demás entidades musicales, si corresponde. Consulta https://musicbrainz.org/doc/MusicBrainz_Identifier. (Opcional)

TimeRange

Es el período desde el cierre hasta la apertura, es decir, [start_time, end_time].

Campos
start_time

Timestamp

El límite inferior del intervalo de tiempo.

end_time

Timestamp

Límite superior del intervalo de tiempo.

TokenizationConfig

Es una configuración para la asignación de token del procesador de pagos, que se define individualmente para cada comercio.

Campos
tokenization_parameter

map<string, string>

Una configuración de asignación de token suele tener un campo tokenization_parameter cuya clave es "gateway" y cuyo valor es el nombre del procesador.

El resto de los parámetros dependen del procesador. Consulta la documentación de Google Pay para obtener más información.

Ejemplo de Braintree: tokenization_parameter { key: "gateway" value: "braintree" } tokenization_parameter { key: "braintree:apiVersion" value: "v1" } tokenization_parameter { key: "braintree:sdkVersion" value: "2.30.0" } tokenization_parameter { key: "braintree:merchantId" value: "abcdef" } tokenization_parameter { key: "braintree:clientKey" value: "production_xxx_yyy" }

Ejemplo de Stripe: tokenization_parameter { key: "gateway" value: "stripe" } tokenization_parameter { key: "stripe:version" value: "2018-02-28" } tokenization_parameter { key: "stripe:publishableKey" value: "pk_1234" }

Ejemplo de Adyen: tokenization_parameter { key: "gateway" value: "adyen" } tokenization_parameter { key: "gatewayMerchantId" value: "yourId" }

billing_information_format

BillingInformationFormat

Incluye los datos de facturación del usuario en el token de pago, tal como se ingresaron en Google Pay con su forma de pago (consulta la información anterior). Si dejas el campo vacío, equivale a especificar MIN.

BillingInformationFormat

Indica qué tanta información de la dirección de facturación se debe solicitar al usuario para incluirla en el token. Los valores enumeradores corresponden a los parámetros de la API de Google Pay (consulta https://developers.google.com/pay/api/web/reference/object#BillingAddressParameters).

Enumeradores
BILLING_INFORMATION_FORMAT_UNSPECIFIED No se especifica. La configuración predeterminada es MIN.
MIN Incluye el nombre y los códigos postal y de país (es la configuración predeterminada de Google Pay).
FULL Incluye el nombre, la dirección, la localidad, la región y los códigos postal y de país.

ToursAndActivitiesContent

Son los campos de contenido específicos de la categoría Visitas guiadas y actividades. Cada elemento del campo repetido debe ser independiente para permitir un procesamiento por separado (p. ej., como una viñeta).

Se recomienda especialmente completar ToursAndActivitiesContent para las visitas guiadas y actividades, pero no es obligatorio. Todos los campos admiten texto sin formato y similar al de HTML para el formato básico. Etiquetas de formato admitidas similares a las que se utilizan en HTML:

Etiquetas de frase:
, , y . Solo se admiten las tres etiquetas antes mencionadas. La etiqueta 
se puede utilizar para dividir líneas en los párrafos, mientras que las etiquetas , se pueden usar para destacar texto importante. Se ignorará cualquier otra etiqueta de frase.

Todas las demás etiquetas y estilos personalizados no están permitidos y se quitarán. Las URL, las anclas y los vínculos se quitarán y nunca se mostrarán a los usuarios finales.

Notas importantes: * No dupliques los datos ya proporcionados en highlights, exclusion y otros campos más específicos en la descripción del servicio. * Evita utilizar otras etiquetas, excepto las admitidas que se mencionan arriba, ya que se quitará el contenido entre etiquetas no compatibles, y esto podría generar una experiencia del usuario no deseada.

Campos
highlights[]

Text

Es la lista de elementos destacados que se le muestra al usuario.

inclusions[]

Text

Es la lista de inclusiones visible para el usuario.

exclusions[]

Text

Es la lista de exclusiones que se muestra al usuario.

must_know[]

Text

Es la lista de notas importantes que se le muestra al usuario. Se usa para detalles como restricciones de edad u otras condiciones que hagan que este servicio no sea adecuado para ti.

UnsupportedPartySizeOption

Opciones para grupos que están fuera de rango.

Campos
call_merchant

CallMerchant

Los tamaños de grupo que están fuera del rango pueden llamar a la empresa. Se mostrará un mensaje predefinido al usuario. Texto de muestra que se mostrará: "Para grupos de más de {waitlist_rules.max_party_size}, llama al restaurante al {phone}". Se debe configurar CallMerchant, pero estará vacío.

UpdateBookingRequest

Es la solicitud para actualizar google.maps.booking.v1alpha.Booking.

Campos
update_mask

FieldMask

Es la máscara de campo de todos los campos de reserva que se deben actualizar.

booking

Booking

La reserva que se actualizará

booking_failure

BookingFailure

Si se produce un error al procesar una solicitud de reserva confirmada de forma asíncrona y el estado de la reserva se actualiza a FAILED, este campo debería reflejar el error de lógica empresarial (p. ej., el usuario ya tiene una reserva demasiado próxima). Este campo solo se debe configurar al actualizar el estado de la reserva a FAILED y se ignorará de lo contrario.

UpdateMerchantRequest

Es la solicitud para actualizar un comercio (Merchant).

Campos
merchant

Merchant

Son los nuevos datos del comercio.

update_mask

FieldMask

Indica los campos específicos que se deben actualizar para el comercio.

UpdateOrderRequest

Es la solicitud para actualizar google.maps.booking.v1alpha.Order.

Campos
update_mask

FieldMask

Máscara de campo de todos los campos de pedido que se actualizarán

order

Order

El pedido que se actualizará

UpdateServiceRequest

Es la solicitud para actualizar un servicio (Service).

Campos
service

Service

Los nuevos datos del servicio.

update_mask

FieldMask

Indica los campos específicos que se deben actualizar para el servicio.

UserPurchaseRestriction

Restringe los usuarios aptos para adquirir una opción de pago.

Campos
new_to_merchant

bool

Es una opción de pago que solo pueden utilizar los usuarios que nunca antes realizaron una compra en el mismo comercio.

new_to_payment_option

bool

Es una opción de pago que solo pueden adquirir los usuarios que nunca antes compraron esa misma opción de pago.

VirtualSession

Información sobre la sesión virtual o en línea. P.ej., Clases de yoga en línea, clases virtuales de cocina, etcétera

Campos
session_instructions

Text

Instrucciones para configurar esta clase virtual. Si el socio no incluye la URL del video con la reserva, este texto debe indicar cuándo se compartirá con el usuario. P. ej. “La URL de Zoom se enviará por correo 30 minutos antes de la clase”. (Recomendado)

session_requirements

Text

Requisitos para la sesión virtual determinada. P. ej., colchoneta de yoga, utensilios de cocina, etc. (recomendado)

virtual_platform_info

VirtualPlatformInfo

Información sobre la plataforma virtual que se usa en esta sesión. (Obligatorio para habilitar los servicios virtuales)

is_session_prerecorded

bool

Obligatorio. Establece esto como verdadero si la sesión virtual no está en vivo y está pregrabada.

VirtualPlatformInfo

Información sobre la plataforma que se utilizará para esta sesión virtual.

Campos
platform

Platform

Plataforma que se usa para la sesión virtual.

other_platform_name

Text

El nombre de la plataforma si está configurada en OTRA. (Obligatorio si la plataforma está configurada en OTRO)

Plataforma

Es una enumeración para indicar qué plataforma virtual usará el comercio.

Enumeraciones
PLATFORM_UNSPECIFIED No se utiliza.
FLEXIBLE El comercio tiene flexibilidad en cuanto a la plataforma de video que utiliza.
GOOGLE_HANGOUTS producto Google Hangouts.
GOOGLE_MEET Google Meet.
ZOOM Zoom Video Communications.
SKYPE Skype
YOUTUBE Transmisiones en vivo en YouTube
OTHER Se debe establecer si la plataforma de video utilizada es diferente de las que se mencionan aquí.

WaitlistRules

Son las reglas para unirse a la lista de espera.

Campos
min_party_size

int32

Este campo es obligatorio. Debe ser un número entero positivo para los servicios que proporcionan funcionalidad de lista de espera. No se debe completar si el servicio o comercio no proporciona la funcionalidad de lista de espera.

max_party_size

int32

Este campo es obligatorio. Debe ser un número entero positivo para los servicios que proporcionan funcionalidad de lista de espera. No se debe completar si el servicio o comercio no proporciona la funcionalidad de lista de espera.

supports_additional_request

bool

Si es verdadero, el usuario podrá enviar una solicitud de texto adicional en formato libre cuando se una a la lista de espera de este servicio.

above_max_party_size_options[]

UnsupportedPartySizeOption

Establece opciones para grupos que sean más grandes que el tamaño max_party_size establecido. Deja el campo en blanco si no se les ofrece a los grupos más grandes otras opciones para unirse a una lista de espera.