Geocoding API הוא שירות שמספק קידוד גיאוגרפי וקידוד גיאוגרפי הפוך של כתובות.
קידוד גיאוגרפי הוא התהליך של המרת כתובות (כמו כתובת) לקואורדינטות גיאוגרפיות (כמו קו רוחב וקו אורך), שבהן אפשר להשתמש כדי למקם במפה, או למקם את המפה.
קידוד גיאוגרפי הפוך הוא התהליך של המרת קואורדינטות גיאוגרפיות לכתובת שקריאה לאנשים.
אפשר גם להשתמש ב-Geocoding API כדי למצוא את הכתובת ציינתם מזהה מקום.
בקשה ותגובה לדוגמה
ניתן לגשת ל-Geocoding API דרך ממשק HTTP. כבר במעקב דוגמאות לבקשות לקידוד גיאוגרפי והמרת קידוד גיאוגרפי.
בקשה ותגובה לקידוד גיאוגרפי (חיפוש קו רוחב/קו אורך)
בדוגמה הבאה מוצגת בקשה לקו הרוחב וקו האורך של ' 1600 Amphitheatre' Parkway, Mountain View, CA", ומציין שהפלט חייב להיות בפורמט JSON.
https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=YOUR_API_KEY
כדי לבדוק זאת, צריך להזין את כתובת ה-URL בדפדפן האינטרנט (חשוב להחליף את הכתובת
YOUR_API_KEY
במפתח ה-API שלכם בפועל).
התשובה כוללת את קו הרוחב וקו האורך של הכתובת.
כדאי לעיין במדריך למפתחים אפשר למצוא מידע נוסף על ליצור כתובות URL של בקשות לקידוד גיאוגרפי וגם פרמטרים זמינים ו- הבנת התגובה.
בהמשך מוצגת תגובה של קידוד גיאוגרפי לדוגמה, ב-JSON:
{ "results" : [ { "address_components" : [ { "long_name" : "1600", "short_name" : "1600", "types" : [ "street_number" ] }, { "long_name" : "Amphitheatre Parkway", "short_name" : "Amphitheatre Pkwy", "types" : [ "route" ] }, { "long_name" : "Mountain View", "short_name" : "Mountain View", "types" : [ "locality", "political" ] }, { "long_name" : "Santa Clara County", "short_name" : "Santa Clara County", "types" : [ "administrative_area_level_2", "political" ] }, { "long_name" : "California", "short_name" : "CA", "types" : [ "administrative_area_level_1", "political" ] }, { "long_name" : "United States", "short_name" : "US", "types" : [ "country", "political" ] }, { "long_name" : "94043", "short_name" : "94043", "types" : [ "postal_code" ] } ], "formatted_address" : "1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA", "geometry" : { "location" : { "lat" : 37.4267861, "lng" : -122.0806032 }, "location_type" : "ROOFTOP", "viewport" : { "northeast" : { "lat" : 37.4281350802915, "lng" : -122.0792542197085 }, "southwest" : { "lat" : 37.4254371197085, "lng" : -122.0819521802915 } } }, "place_id" : "ChIJtYuu0V25j4ARwu5e4wwRYgE", "plus_code" : { "compound_code" : "CWC8+R3 Mountain View, California, United States", "global_code" : "849VCWC8+R3" }, "types" : [ "street_address" ] } ], "status" : "OK" }
היפוך הבקשה והתגובה של קידוד גיאוגרפי (חיפוש כתובת)
הדוגמה הבאה מבקשת את הכתובת שתואמת לקו אורך/רוחב נתון בברוקלין, ניו יורק, ארה"ב. הוא מציין שהפלט חייב להיות בפורמט JSON.
https://maps.googleapis.com/maps/api/geocode/json?latlng=40.714224,-73.961452&key=YOUR_API_KEY
כדי לבדוק זאת, צריך להזין את כתובת ה-URL בדפדפן האינטרנט (חשוב להחליף את הכתובת 'YOUR_API_KEY' באמצעות מפתח ה-API שלך בפועל). התשובה כוללת כתובת שבודק אנושי יכול לקרוא את קו הרוחב וקו האורך המיקום.
כדאי לעיין במדריך למפתחים אפשר למצוא מידע נוסף על יצירת כתובות URL לבקשה לגבי קידוד גיאוגרפי הפוך וגם פרמטרים זמינים ו- הבנת התגובה.
בהמשך מוצגת דוגמה לתגובה של קידוד גיאוגרפי הפוך, ב-JSON:
{ "plus_code" : { "compound_code" : "P27Q+MC New York, NY, USA", "global_code" : "87G8P27Q+MC" }, "results" : [ { "address_components" : [ { "long_name" : "279", "short_name" : "279", "types" : [ "street_number" ] }, { "long_name" : "Bedford Avenue", "short_name" : "Bedford Ave", "types" : [ "route" ] }, { "long_name" : "Williamsburg", "short_name" : "Williamsburg", "types" : [ "neighborhood", "political" ] }, { "long_name" : "Brooklyn", "short_name" : "Brooklyn", "types" : [ "political", "sublocality", "sublocality_level_1" ] }, { "long_name" : "Kings County", "short_name" : "Kings County", "types" : [ "administrative_area_level_2", "political" ] }, { "long_name" : "New York", "short_name" : "NY", "types" : [ "administrative_area_level_1", "political" ] }, { "long_name" : "United States", "short_name" : "US", "types" : [ "country", "political" ] }, { "long_name" : "11211", "short_name" : "11211", "types" : [ "postal_code" ] } ], "formatted_address" : "279 Bedford Ave, Brooklyn, NY 11211, USA", "geometry" : { "location" : { "lat" : 40.7142484, "lng" : -73.9614103 }, "location_type" : "ROOFTOP", "viewport" : { "northeast" : { "lat" : 40.71559738029149, "lng" : -73.9600613197085 }, "southwest" : { "lat" : 40.71289941970849, "lng" : -73.96275928029151 } } }, "place_id" : "ChIJT2x8Q2BZwokRpBu2jUzX3dE", "plus_code" : { "compound_code" : "P27Q+MC Brooklyn, New York, United States", "global_code" : "87G8P27Q+MC" }, "types" : [ "bakery", "cafe", "establishment", "food", "point_of_interest", "store" ] }, ... Additional results truncated in this example[] ... ], "status" : "OK" }
מתחילים לתכנת באמצעות ספריות הלקוח שלנו
ספריות לקוח הופכות להתפתח עם ממשקי ה-API של שירות האינטרנט של מפות Google בקלות רבה יותר, באמצעות הטמעות נייטיב של משימות נפוצות, כמו אימות, בקשות ויסות נתונים (throttle) וניסיונות חוזרים באופן אוטומטי. Geocoding API זמין ב לקוח Java, לקוח Python, Go Client ו-Node.js של שירותי מפות Google.
אימות, מכסות, תמחור ומדיניות
אימות
כדי להשתמש ב-Geocoding API, קודם צריך להפעיל את ה-API ולקבל את פרטי הכניסה המתאימים. מידע נוסף זמין במאמר הבא: תחילת העבודה עם הפלטפורמה של מפות Google.
מכסות ותמחור
בדיקת השימוש ובחיוב לפרטים על המכסות והתמחור שהוגדרו ל-Geocoding API.
מדיניות
השימוש ב-Geocoding API חייב להיות בהתאם המדיניות בנושא API.
מידע נוסף
יש עוד הרבה דברים שאפשר לעשות עם Geocoding API. לצפייה במדריך למפתחים בנושא Geocoding API להדגמות נוספות, דוגמאות, פרמטרים זמינים, קודי סטטוס והודעות שגיאה ופרטים אחרים.
במדריך למפתחים בנושא Geocoding API שירות אינטרנט של Geocoding API. האפליקציה מיועדת למפתחים של אתרים ולניידים שרוצים להשתמש בנתוני קידוד גיאוגרפי במפות שמסופקות על ידי אחת מהפלטפורמה של מפות Google ממשקי API.