Plik danych o dostępności
Definicje
Definicja pliku danych o dostępności
message AvailabilityFeed {
repeated Schedule data = 1;
}
Definicja harmonogramu
// Info about a schedule, which is a container for available slots that can be
// booked using an appointment. A schedule ID should be unique and stable for a
// given practitioner, facility, service type, and appointment type.
// (practitioner and appointment type are optional to identify a schedule) A
// AvailabilityFeed should be a list of this message.
message Schedule {
// An opaque string from the partner to identify a practitioner. (required
// only if booking by specific practitioner)
string practitioner_id = 1;
// An opaque string from the partner to identify a facility. (required)
string facility_id = 2;
// An opaque string to identify an appointment type. (required)
string appointment_type_id = 4;
// Ordering priority of appointment_types to display in Google Search/Map UI
// for a practitioner/facility. Appointment_types with smaller priority number
// will be displayed before the one with larger priority number. In the
// compact UI block (E.g. only three appointment_types can be displayed),
// appointment_types with lower priority might be hidden. The priority number
// should be unique among the (practitioner_id, facility_id,
// appointment_type_id) combination. And, they do not need to be a contiguous
// integer sequence. If priority is not provided or not unique among a
// (practitioner_id, facility_id, appointment_type_id) combination,
// appointment_types will be displayed in the same order as the list of
// schedules. (optional)
int32 priority = 5;
// All Availability Slots included in this schedule (required)
repeated AvailableSlots available_slots = 6;
// An action URL representing the deep link to this schedule. It will redirect
// users to a booking webpage with the practitioner, facility, service_type,
// and appointment_type preselected. (optional)
ActionLink per_schedule_action_link = 7;
// ...
}
Definicja linku do działania
// An action URL with associated language, list of countries restricted to, and
// optional platform that indicates which platform this action should be
// performed on.
message ActionLink {
// The entry point URL for this action link. (required)
string url = 1;
// The BCP-47 language tag identifying the language in which the content
// from this URI is available. (optional)
string language = 2;
// An unordered list of ISO 3166-1 alpha-2 country codes. Leave empty for
// unrestricted visibility. (optional)
repeated string restricted_country = 3;
// ...
}
Definicja dostępnych miejsc
// This proto can be used to show a slot for a single visit or number of
// available slot on a specific date. A slot for a single visit (30 minutes):
// {start_sec: xx, duration_sec: 1800, spots_total: 1, spots_open: 1}
// number of available slot on a specific date:
// {start_sec: xx, duration_sec: 86400, spots_total: 7, spots_open: 10}
message AvailableSlots {
// Start time of this availability, using epoch time in seconds in UTC.
// (required)
int64 start_sec = 1;
// Duration of the service in seconds, e.g. 30 minutes would be 1800.
// (required)
int64 duration_sec = 2;
// Number of total spots and open spots of this availability. Typically, 1.
// (both required)
int64 spots_total = 3;
int64 spots_open = 4;
// Availability scheduling rules. (optional)
SchedulingRuleOverrides scheduling_rule_overrides = 7;
// ...
}
Definicja SchedulingRuleOverrides
// Availability level scheduling rules.
message SchedulingRuleOverrides {
// The last time (in seconds) that this slot is able to be booked. This
// timestamp must be before the start_sec of the slot. (optional)
int64 last_bookable_sec = 1;
// ...
}
Przykłady plików danych z informacjami o dostępności
{
"data": [
{
"practitioner_id": "practitioner_00001",
"facility_id": "facility_00111",
"appointment_type_id": "appointment_type_00001",
"per_schedule_action_link": {
"url": "https://health.appointment/booking/facility_111/appt_type_1",
"language": "en-US",
"restricted_country": ["US"]
},
"available_slots": [
{
"start_sec": 1614907600,
"duration_sec": 1800,
"spots_total": 1,
"spots_open": 1,
"scheduling_rule_overrides": {
"last_bookable_sec": 1614904000
}
},
{
"start_sec": 1614909400,
"duration_sec": 1800,
"spots_total": 1,
"spots_open": 1,
"scheduling_rule_overrides": {
"last_bookable_sec": 1614905800
}
},
{
"start_sec": 1614911200,
"duration_sec": 1800,
"spots_total": 1,
"spots_open": 1,
"scheduling_rule_overrides": {
"last_bookable_sec": 1614907600
}
}
]
},
{
"practitioner_id": "practitioner_00002",
"facility_id": "facility_00231",
"appointment_type_id": "appointment_type_00001",
"per_schedule_action_link": {
"url": "https://health.appointment/booking/facility_231/appt_type_1",
"language": "en-US",
"restricted_country": ["US"]
},
"available_slots": [
{
"start_sec": 1623100000,
"duration_sec": 1800,
"spots_total": 1,
"spots_open": 1
}
]
}
]
}
{
"generation_timestamp": 1616422319,
"name": "healthappointments.availability",
"data_file": [
"healthappointments.availability-1616422319-00000-of-00003.json",
"healthappointments.availability-1616422319-00001-of-00003.json",
"healthappointments.availability-1616422319-00002-of-00003.json"
]
}
O ile nie stwierdzono inaczej, treść tej strony jest objęta licencją Creative Commons – uznanie autorstwa 4.0, a fragmenty kodu są dostępne na licencji Apache 2.0. Szczegółowe informacje na ten temat zawierają zasady dotyczące witryny Google Developers. Java jest zastrzeżonym znakiem towarowym firmy Oracle i jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2024-11-26 UTC.
[null,null,["Ostatnia aktualizacja: 2024-11-26 UTC."],[[["The availability feed, defined in protobuf but preferably uploaded in JSON, provides schedule information for bookable appointment slots."],["Each schedule within the feed specifies details like practitioner, facility, appointment type, and available slots."],["Available slots include start time, duration, total spots, open spots, and optional scheduling rule overrides."],["The `per_schedule_action_link` within a schedule provides a deep link to a booking webpage with pre-filled information."],["JSON sample feeds and a descriptor file are provided for reference and understanding of the feed structure."]]],["The content defines an availability feed structure, recommending JSON format for uploads. A feed contains schedules, each with a unique identifier, facility ID, and appointment type. Schedules list available slots, specifying start time, duration, total and open spots, and optional booking restrictions. Each schedule can include an action URL to deep-link to a booking page and can have a priority to order the appointment types displayed. An action URL contains the entry point URL, language, and optional restricted countries.\n"]]