שנתחיל?

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, מפני שהן מאפשרות הטמעות פשוטות ומקוריות של משימות נפוצות, כמו אימות, ויסות בקשות וניסיון חוזר באופן אוטומטי. ה-Geocoding API זמין בלקוח Java, לקוח Python, לקוח Go ולקוח Node.js לשירותי מפות Google.

אימות, מכסות, תמחור וכללי מדיניות

אימות

כדי להשתמש ב-Geocoding API, קודם צריך להפעיל את ה-API ולקבל את פרטי הכניסה המתאימים לאימות. מידע נוסף זמין במאמר תחילת השימוש בפלטפורמה של מפות Google.

מכסות ותמחור

פרטים על המכסות והתמחור שהוגדרו ל-Geocoding API זמינים בדף שימוש וחיוב.

כללי מדיניות

השימוש ב-Geocoding API חייב להיות בהתאם למדיניות ה-API.

מידע נוסף

יש עוד הרבה מה לעשות עם Geocoding API. במדריך למפתחים בנושא Geocoding API ניתן למצוא הדגמות נוספות, דוגמאות, פרמטרים זמינים, קודי סטטוס והודעות שגיאה ופרטים נוספים.

במדריך למפתחים בנושא Geocoding API מפורט שירות האינטרנט של Geocoding API. התוכנית מיועדת למפתחי אתרים ולניידים שרוצים להשתמש בנתוני קידוד גיאוגרפי בתוך מפות שמסופקות על ידי אחד מממשקי ה-API של הפלטפורמה של מפות Google.