generated: '2026-06-20' method: derived source: openapi/google-maps-directions-api.yml, openapi/google-maps-geocoding-api.yml, openapi/google-maps-places-api.yml note: 'Entity-relationship graph derived from OpenAPI component schemas and their $ref links. Google Maps identifiers are opaque strings: place_id / places/{place_id} (Places), and encoded polyline strings for geometry.' id_fields: - field: place_id entity_domain: Places note: Stable opaque identifier for a place; resource name form places/{place_id} in Places (New). - field: photo reference / name entity_domain: Places note: Reference used to fetch place photo media. entities: - name: DirectionsResponse source: openapi/google-maps-directions-api.yml - name: Route source: openapi/google-maps-directions-api.yml - name: Leg source: openapi/google-maps-directions-api.yml - name: Step source: openapi/google-maps-directions-api.yml - name: TransitDetails source: openapi/google-maps-directions-api.yml - name: TransitStop source: openapi/google-maps-directions-api.yml - name: TransitLine source: openapi/google-maps-directions-api.yml - name: TextValuePair source: openapi/google-maps-directions-api.yml - name: TimeZoneTextValue source: openapi/google-maps-directions-api.yml - name: Polyline source: openapi/google-maps-directions-api.yml - name: Fare source: openapi/google-maps-directions-api.yml - name: GeocodedWaypoint source: openapi/google-maps-directions-api.yml - name: LatLng source: openapi/google-maps-directions-api.yml - name: Bounds source: openapi/google-maps-directions-api.yml - name: GeocodingResponse source: openapi/google-maps-geocoding-api.yml - name: GeocodingResult source: openapi/google-maps-geocoding-api.yml - name: AddressComponent source: openapi/google-maps-geocoding-api.yml - name: Geometry source: openapi/google-maps-geocoding-api.yml - name: LatLng source: openapi/google-maps-geocoding-api.yml - name: Bounds source: openapi/google-maps-geocoding-api.yml - name: PlusCode source: openapi/google-maps-geocoding-api.yml - name: Place source: openapi/google-maps-places-api.yml - name: SearchTextRequest source: openapi/google-maps-places-api.yml - name: SearchNearbyRequest source: openapi/google-maps-places-api.yml - name: AutocompleteRequest source: openapi/google-maps-places-api.yml - name: AutocompleteResponse source: openapi/google-maps-places-api.yml - name: Suggestion source: openapi/google-maps-places-api.yml - name: PlacePrediction source: openapi/google-maps-places-api.yml - name: QueryPrediction source: openapi/google-maps-places-api.yml - name: FormattableText source: openapi/google-maps-places-api.yml - name: StructuredFormat source: openapi/google-maps-places-api.yml - name: SearchPlacesResponse source: openapi/google-maps-places-api.yml - name: LocationBias source: openapi/google-maps-places-api.yml - name: LocationRestriction source: openapi/google-maps-places-api.yml - name: Circle source: openapi/google-maps-places-api.yml - name: Rectangle source: openapi/google-maps-places-api.yml - name: LocalizedText source: openapi/google-maps-places-api.yml - name: LatLng source: openapi/google-maps-places-api.yml - name: Viewport source: openapi/google-maps-places-api.yml - name: PlusCode source: openapi/google-maps-places-api.yml - name: PlaceAddressComponent source: openapi/google-maps-places-api.yml - name: OpeningHours source: openapi/google-maps-places-api.yml - name: Period source: openapi/google-maps-places-api.yml - name: Point source: openapi/google-maps-places-api.yml - name: Review source: openapi/google-maps-places-api.yml - name: AuthorAttribution source: openapi/google-maps-places-api.yml - name: Photo source: openapi/google-maps-places-api.yml - name: PhotoMedia source: openapi/google-maps-places-api.yml - name: AccessibilityOptions source: openapi/google-maps-places-api.yml - name: ParkingOptions source: openapi/google-maps-places-api.yml - name: PaymentOptions source: openapi/google-maps-places-api.yml relationships: - from: DirectionsResponse to: Route kind: has_many via: routes - from: DirectionsResponse to: GeocodedWaypoint kind: has_many via: geocoded_waypoints - from: Route to: Leg kind: has_many via: legs - from: Route to: Polyline kind: has_one via: overview_polyline - from: Route to: Bounds kind: has_one via: bounds - from: Route to: Fare kind: has_one via: fare - from: Leg to: Step kind: has_many via: steps - from: Leg to: TextValuePair kind: has_one via: distance - from: Leg to: TextValuePair kind: has_one via: duration - from: Leg to: TextValuePair kind: has_one via: duration_in_traffic - from: Leg to: LatLng kind: has_one via: start_location - from: Leg to: LatLng kind: has_one via: end_location - from: Leg to: TimeZoneTextValue kind: has_one via: arrival_time - from: Leg to: TimeZoneTextValue kind: has_one via: departure_time - from: Step to: TextValuePair kind: has_one via: distance - from: Step to: TextValuePair kind: has_one via: duration - from: Step to: LatLng kind: has_one via: start_location - from: Step to: LatLng kind: has_one via: end_location - from: Step to: Polyline kind: has_one via: polyline - from: Step to: TransitDetails kind: has_one via: transit_details - from: Step to: Step kind: has_many via: steps - from: TransitDetails to: TransitStop kind: has_one via: arrival_stop - from: TransitDetails to: TransitStop kind: has_one via: departure_stop - from: TransitDetails to: TimeZoneTextValue kind: has_one via: arrival_time - from: TransitDetails to: TimeZoneTextValue kind: has_one via: departure_time - from: TransitDetails to: TransitLine kind: has_one via: line - from: TransitStop to: LatLng kind: has_one via: location - from: Bounds to: LatLng kind: has_one via: northeast - from: Bounds to: LatLng kind: has_one via: southwest - from: GeocodingResponse to: GeocodingResult kind: has_many via: results - from: GeocodingResult to: AddressComponent kind: has_many via: address_components - from: GeocodingResult to: Geometry kind: has_one via: geometry - from: GeocodingResult to: PlusCode kind: has_one via: plus_code - from: Geometry to: LatLng kind: has_one via: location - from: Geometry to: Bounds kind: has_one via: viewport - from: Geometry to: Bounds kind: has_one via: bounds - from: Bounds to: LatLng kind: has_one via: northeast - from: Bounds to: LatLng kind: has_one via: southwest - from: Place to: LocalizedText kind: has_one via: displayName - from: Place to: LocalizedText kind: has_one via: primaryTypeDisplayName - from: Place to: PlaceAddressComponent kind: has_many via: addressComponents - from: Place to: LatLng kind: has_one via: location - from: Place to: Viewport kind: has_one via: viewport - from: Place to: OpeningHours kind: has_one via: regularOpeningHours - from: Place to: OpeningHours kind: has_one via: currentOpeningHours - from: Place to: Review kind: has_many via: reviews - from: Place to: Photo kind: has_many via: photos - from: Place to: LocalizedText kind: has_one via: editorialSummary - from: Place to: PlusCode kind: has_one via: plusCode - from: Place to: AccessibilityOptions kind: has_one via: accessibilityOptions - from: Place to: ParkingOptions kind: has_one via: parkingOptions - from: Place to: PaymentOptions kind: has_one via: paymentOptions - from: SearchTextRequest to: LocationBias kind: has_one via: locationBias - from: SearchTextRequest to: LocationRestriction kind: has_one via: locationRestriction - from: SearchNearbyRequest to: LocationRestriction kind: has_one via: locationRestriction - from: AutocompleteRequest to: LocationBias kind: has_one via: locationBias - from: AutocompleteRequest to: LocationRestriction kind: has_one via: locationRestriction - from: AutocompleteRequest to: LatLng kind: has_one via: origin - from: AutocompleteResponse to: Suggestion kind: has_many via: suggestions - from: Suggestion to: PlacePrediction kind: has_one via: placePrediction - from: Suggestion to: QueryPrediction kind: has_one via: queryPrediction - from: PlacePrediction to: FormattableText kind: has_one via: text - from: PlacePrediction to: StructuredFormat kind: has_one via: structuredFormat - from: QueryPrediction to: FormattableText kind: has_one via: text - from: QueryPrediction to: StructuredFormat kind: has_one via: structuredFormat - from: StructuredFormat to: FormattableText kind: has_one via: mainText - from: StructuredFormat to: FormattableText kind: has_one via: secondaryText - from: SearchPlacesResponse to: Place kind: has_many via: places - from: LocationBias to: Circle kind: has_one via: circle - from: LocationBias to: Rectangle kind: has_one via: rectangle - from: LocationRestriction to: Circle kind: has_one via: circle - from: LocationRestriction to: Rectangle kind: has_one via: rectangle - from: Circle to: LatLng kind: has_one via: center - from: Rectangle to: LatLng kind: has_one via: low - from: Rectangle to: LatLng kind: has_one via: high - from: Viewport to: LatLng kind: has_one via: low - from: Viewport to: LatLng kind: has_one via: high - from: OpeningHours to: Period kind: has_many via: periods - from: Period to: Point kind: has_one via: open - from: Period to: Point kind: has_one via: close - from: Review to: LocalizedText kind: has_one via: text - from: Review to: LocalizedText kind: has_one via: originalText - from: Review to: AuthorAttribution kind: has_one via: authorAttribution - from: Photo to: AuthorAttribution kind: has_many via: authorAttributions