درخواست و پاسخ زمین‌کدیابی

توسعه‌دهندگان منطقه اقتصادی اروپا (EEA)

درخواست

درخواست Geocoding API به‌صورت زیر است:

https://maps.googleapis.com/maps/api/geocode/outputFormat?parameters

که در آن outputFormat می‌تواند یکی از مقادیر زیر باشد:

  • json (توصیه‌شده) نشان‌دهنده خروجی در «نشان‌گذاری شیء جاوا اسکریپت» (JSON) است؛ یا
  • xml نشان‌دهنده برونداد در XML است

HTTPS الزامی است.

برخی پارامترها الزامی و برخی اختیاری هستند. همان‌طور که در نشانی‌های وب استاندارد است، پارامترها بااستفاده از نویسه اَمپرسند (&) از هم جدا می‌شوند.

در ادامه این صفحه، زمین‌کدیابی و زمین‌کدیابی معکوس به‌طور جداگانه شرح داده شده است، زیرا پارامترهای متفاوتی برای هر نوع درخواست دردسترس است.

پارامترهای زمین‌کدیابی (جستجوی طول/عرض جغرافیایی)

پارامترهای الزامی در درخواست زمین‌کدیابی:

  • key — کلید میانای برنامه‌سازی کاربردی برنامه شما. این کلید برنامه شما را برای اهداف مدیریت سهمیه شناسایی می‌کند. با نحوه دریافت کلید آشنا شوید.
  • باید address یا components یا هر دو را در درخواست مشخص کنید:

    • address — نشانی خیابان یا plus code که می‌خواهید زمین‌کدیابی کنید. توجه: زمین‌کدیابی نشانی مختصات عرض جغرافیایی و طول جغرافیایی یا رشته‌های بدون ساختار دیگری را که نشان‌دهنده نشانی یا Plus Code نیستند حل‌وفصل نمی‌کند. درخواست‌هایی که از این رشته‌ها استفاده می‌کنند پشتیبانی نمی‌شوند و ممکن است منجر به پاسخ‌های خطا یا رفتار نامشخص شوند. نمونه‌هایی از پُرسمان‌های پشتیبانی‌نشده شامل موارد زیر است:
      نوع پُرسمان مثال
      مختصات طول و عرض جغرافیایی. درعوض از زمین‌کدیابی معکوس استفاده کنید. "37.422131,-122.084801"
      مفاهیم یا محدودیت‌های بسیار زیاد، مانند نام چندین مکان، جاده، یا شهر در یک پُرسمان «Market Street San Francisco San Jose Airport»
      عناصر نشانی پستی که در Google Maps نشان داده نمی‌شود «C/O John Smith 123 Main Street»
      «P.O. Box 13 San Francisco»
      نام کسب‌وکارها، زنجیره‌ها، یا دسته‌هایی که با مکان‌هایی ترکیب شده‌اند که این نهادها در آن‌ها دردسترس نیستند «Tesco near Dallas, Texas» (تسکو نزدیک دالاس، تگزاس)
      پرسمان‌های مبهم با چند تفسیر «تحویل شارژر»
      نام‌های قدیمی که دیگر استفاده نمی‌شوند "Middlesex United Kingdom"
      عناصر یا هدف غیرزمین‌مکانی «چند قایق در بندر ونتورا وجود دارد؟»
      نام‌های غیررسمی یا نام‌های سفارشی «برج هیجان»
      «سرسره مارپیچ»
      نشانی‌ها را مطابق با قالبی که خدمات پستی ملی کشور مربوطه استفاده می‌کند مشخص کنید. از افزودن عناصر نشانی اضافی مثل نام کسب‌وکار و شماره واحد، سوئیت، یا طبقه باید اجتناب شود. عناصر نشانی خیابان باید با فاصله از هم جدا شوند (در اینجا به‌صورت url-escaped به %20 نشان داده شده است):
      address=24%20Sussex%20Drive%20Ottawa%20ON
      Plus Code را همان‌طور که در اینجا نشان داده شده است قالب‌بندی کنید (علامت‌های جمع به %2B و فاصله‌ها به %20 تبدیل می‌شوند):
      • کد جهانی کد منطقه‌ای ۴ نویسه‌ای و کد محلی ۶ نویسه‌ای یا طولانی‌تر است (849VCWC8+R9‏ 849VCWC8%2BR9 است).
      • کد ترکیبی کد محلی ۶ نویسه‌ای یا طولانی‌تر با مکان صریح است (CWC8+R9 Mountain View, CA, USA CWC8%2BR9%20Mountain%20View%20CA%20USA است).
    • components — فیلتر مؤلفه‌ها با عناصری که با خط عمودی (|) از هم جدا شده‌اند. فیلتر مؤلفه‌ها به‌عنوان پارامتر اختیاری نیز پذیرفته می‌شود اگر address ارائه شده باشد. هر عنصر در فیلتر مؤلفه‌ها از یک جفت component:value تشکیل شده است و نتایج زمین‌کدیاب را کاملاً محدود می‌کند. اطلاعات بیشتر درباره فیلتر کردن مؤلفه را در زیر ببینید.

برای راهنمایی بیشتر، پرسشگان را ببینید.

پارامترهای اختیاری در درخواست «زمین‌کدیابی»:

  • bounds — کادر مرزی نمای هدف که نتایج زمین‌کدیاب در آن به‌طور برجسته‌تری سوگیری می‌شود. این پارامتر فقط بر نتایج زمین‌کدیاب تأثیر می‌گذارد و آن‌ها را کاملاً محدود نمی‌کند. (برای اطلاعات بیشتر، سوگیری نمای هدف را در زیر ببینید.)
  • language — زبانی که نتایج به آن برگردانده می‌شود.
    • فهرست زبان‌های پشتیبانی‌شده را ببینید. Google اغلب زبان‌های پشتیبانی‌شده را به‌روز می‌کند، بنابراین این فهرست ممکن است کامل نباشد.
    • اگر language ارائه نشده باشد، زمین‌کدیاب تلاش می‌کند از زبان ترجیحی مشخص‌شده در سرصفحه Accept-Language یا زبان بومی دامنه‌ای که درخواست از آن ارسال شده است استفاده کند.
    • زمین‌کدیاب تمام تلاش خود را می‌کند تا نشانی خیابانی ارائه دهد که هم برای کاربر و هم برای افراد محلی قابل‌خواندن باشد. برای دستیابی به این هدف، نشانی‌های خیابان را به زبان محلی برمی‌گرداند، درصورت لزوم به نویسه‌ای که برای کاربر قابل‌خواندن باشد نویسه‌گردانی می‌کند، و زبان ترجیحی را رعایت می‌کند. همه نشانی‌های دیگر به زبان ترجیحی برگردانده می‌شوند. همه مؤلفه‌های نشانی به همان زبان برگردانده می‌شوند، که از مؤلفه اول انتخاب شده است.
    • اگر نامی به زبان ترجیحی دردسترس نباشد، زمین‌کدیاب از نزدیک‌ترین مطابقت استفاده می‌کند.
    • زبان ترجیحی تأثیر کمی بر مجموعه نتایجی دارد که میانای برنامه‌سازی کاربردی برای برگرداندن انتخاب می‌کند و ترتیبی که برگردانده می‌شوند. زمین‌کدیاب اختصارها را بسته به زبان به‌طور متفاوتی تفسیر می‌کند، مثلاً اختصارهای انواع خیابان، یا مترادف‌هایی که ممکن است در یک زبان معتبر باشند اما در زبان دیگر نه. برای مثال، utca و tér در زبان مجاری به‌ترتیب مترادف خیابان و میدان هستند.
  • region — کد منطقه، که به‌عنوان مقدار دو نویسه‌ای ccTLD («دامنه سطح بالا») مشخص شده است. این پارامتر فقط بر نتایج زمین‌کدیاب تأثیر می‌گذارد و آن‌ها را کاملاً محدود نمی‌کند. (برای اطلاعات بیشتر، سوگیری منطقه‌ای را در زیر ببینید.) پارامتر همچنین می‌تواند براساس قانون ذی‌ربط بر نتایج تأثیر بگذارد.
  • components — فیلتر مؤلفه‌ها با عناصری که با خط عمودی (|) از هم جدا شده‌اند. اگر درخواست شامل address نباشد، فیلتر مؤلفه‌ها الزامی است. هر عنصر در فیلتر مؤلفه‌ها از یک جفت component:value تشکیل شده است و نتایج زمین‌کدیاب را کاملاً محدود می‌کند. اطلاعات بیشتر درباره فیلتر کردن مؤلفه را در زیر ببینید.
  • extra_computations — از این پارامتر برای مشخص کردن ویژگی‌های اضافی زیر در پاسخ استفاده کنید: برای فعال کردن چند مورد از این ویژگی‌ها برای یک درخواست API، پارامتر extra_computations را در درخواست برای هر ویژگی اضافه کنید، برای مثال:
    extra_computations=ADDRESS_DESCRIPTORS&extra_computations=BUILDING_AND_ENTRANCES

پاسخ‌ها

پاسخ‌های زمین‌کدیابی در قالبی که با پرچم output در درخواست نشانی وب مشخص شده است، یا به‌طور پیش‌فرض در قالب JSON برگردانده می‌شوند.

در این مثال، Geocoding API درخواست پاسخ json برای پُرسمان در نشانی «1600 Amphitheatre Parkway, Mountain View, CA» می‌کند.

این درخواست استفاده از پرچم JSON output را نشان می‌دهد:

https://maps.googleapis.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=YOUR_API_KEY

این درخواست استفاده از پرچم XML output را نشان می‌دهد:

https://maps.googleapis.com/maps/api/geocode/xml?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&key=YOUR_API_KEY

برای دیدن نمونه پاسخ‌های JSON و XML، برگه‌های زیر را انتخاب کنید.

(قالب) 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"
                    ]
                },
                {
                    "long_name": "1351",
                    "short_name": "1351",
                    "types": [
                        "postal_code_suffix"
                    ]
                }
            ],
            "formatted_address": "1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA",
            "geometry": {
                "location": {
                    "lat": 37.4222804,
                    "lng": -122.0843428
                },
                "location_type": "ROOFTOP",
                "viewport": {
                    "northeast": {
                        "lat": 37.4237349802915,
                        "lng": -122.083183169709
                    },
                    "southwest": {
                        "lat": 37.4210370197085,
                        "lng": -122.085881130292
                    }
                }
            },
            "place_id": "ChIJRxcAvRO7j4AR6hm6tys8yA8",
            "plus_code": {
                "compound_code": "CWC8+W7 Mountain View, CA",
                "global_code": "849VCWC8+W7"
            },
            "types": [
                "street_address"
            ]
        }
    ],
    "status": "OK"
}

توجه داشته باشید که پاسخ JSON حاوی دو عنصر ریشه است:

  • "status" حاوی فراداده درباره درخواست است. کدهای وضعیت را در زیر ببینید.
  • "results" حاوی آرایه‌ای از اطلاعات نشانی زمین‌کدیابی‌شده و اطلاعات هندسی است.

به‌طور کلی، فقط یک ورودی در آرایه "results" برای جستجوی نشانی برگردانده می‌شود، هرچند زمین‌کدیاب ممکن است درصورت مبهم بودن پُرسمان‌های نشانی، چندین نتیجه برگرداند.

XML

<GeocodeResponse>
    <status>OK</status>
    <result>
        <type>street_address</type>
        <formatted_address>1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA</formatted_address>
        <address_component>
            <long_name>1600</long_name>
            <short_name>1600</short_name>
            <type>street_number</type>
        </address_component>
        <address_component>
            <long_name>Amphitheatre Parkway</long_name>
            <short_name>Amphitheatre Pkwy</short_name>
            <type>route</type>
        </address_component>
        <address_component>
            <long_name>Mountain View</long_name>
            <short_name>Mountain View</short_name>
            <type>locality</type>
            <type>political</type>
        </address_component>
        <address_component>
            <long_name>Santa Clara County</long_name>
            <short_name>Santa Clara County</short_name>
            <type>administrative_area_level_2</type>
            <type>political</type>
        </address_component>
        <address_component>
            <long_name>California</long_name>
            <short_name>CA</short_name>
            <type>administrative_area_level_1</type>
            <type>political</type>
        </address_component>
        <address_component>
            <long_name>United States</long_name>
            <short_name>US</short_name>
            <type>country</type>
            <type>political</type>
        </address_component>
        <address_component>
            <long_name>94043</long_name>
            <short_name>94043</short_name>
            <type>postal_code</type>
        </address_component>
        <geometry>
            <location>
                <lat>37.4224428</lat>
                <lng>-122.0842467</lng>
            </location>
            <location_type>ROOFTOP</location_type>
            <viewport>
                <southwest>
                    <lat>37.4212648</lat>
                    <lng>-122.0856069</lng>
                </southwest>
                <northeast>
                    <lat>37.4239628</lat>
                    <lng>-122.0829089</lng>
                </northeast>
            </viewport>
        </geometry>
        <place_id>ChIJeRpOeF67j4AR9ydy_PIzPuM</place_id>
        <plus_code>
            <global_code>849VCWC8+X8</global_code>
            <compound_code>CWC8+X8 Mountain View, CA</compound_code>
        </plus_code>
    </result>
</GeocodeResponse>

توجه داشته باشید که پاسخ XML شامل یک <GeocodeResponse> و دو عنصر سطح بالا است:

  • <status> حاوی فراداده درباره درخواست است. کدهای وضعیت را در زیر ببینید.
  • صفر یا چند عنصر <result>، که هرکدام حاوی یک مجموعه اطلاعات نشانی زمین‌کدیابی‌شده و اطلاعات هندسی است.

پاسخ XML به‌طور قابل‌توجهی طولانی‌تر از پاسخ JSON است. به همین دلیل، توصیه می‌کنیم از json به‌عنوان پرچم خروجی ترجیحی استفاده کنید، مگراینکه سرویس شما به دلیلی به xml نیاز داشته باشد. علاوه‌براین، پردازش درخت‌های XML نیاز به دقت دارد تا به گره‌ها و عناصر مناسب ارجاع دهید. برای برخی‌از الگوهای طراحی توصیه‌شده برای پردازش خروجی، تجزیه XML با XPath را ببینید.

  • نتایج XML در عنصر ریشه <GeocodeResponse> قرار می‌گیرند.
  • JSON ورودی‌های دارای چند عنصر را با آرایه‌های جمع (types) نشان می‌دهد، درحالی‌که XML این ورودی‌ها را بااستفاده از چند عنصر مفرد (<type>) نشان می‌دهد.
  • عناصر خالی ازطریق آرایه‌های خالی در JSON نشان داده می‌شوند، اما با عدم وجود هرگونه عنصر مشابه در XML. پاسخی که هیچ نتیجه‌ای تولید نمی‌کند، برای مثال، آرایه results خالی در JSON برمی‌گرداند، اما هیچ عنصر <result> در XML برنمی‌گرداند.

کدهای وضعیت

فیلد "status" در شیء پاسخ «زمین‌کدیابی» حاوی وضعیت درخواست است و ممکن است حاوی اطلاعات اشکال‌زدایی باشد تا به شما کمک کند دلیل کار نکردن زمین‌کدیابی را ردیابی کنید. فیلد "status" ممکن است حاوی مقادیر زیر باشد:

  • "OK" نشان می‌دهد که خطایی رخ نداده است؛ نشانی باموفقیت تجزیه شده است و حداقل یک زمین‌کد برگردانده شده است.
  • "ZERO_RESULTS" نشان می‌دهد که زمین‌کدیابی موفقیت‌آمیز بوده است اما نتیجه‌ای برنگردانده است. این خطا ممکن است زمانی رخ دهد که address ناموجودی به زمین‌کدیاب ارسال شده باشد.
  • OVER_DAILY_LIMIT نشان‌دهنده هریک از موارد زیر است:
    • کلید میانای برنامه‌سازی کاربردی وجود ندارد یا نامعتبر است.
    • صدور صورت‌حساب در حسابتان فعال نشده است.
    • از سقف استفاده‌ای که خودتان تعیین کرده‌اید فراتر رفته‌اید.
    • روش پرداخت ارائه‌شده دیگر معتبر نیست (برای مثال، کارت اعتباری منقضی شده است).

    برای آشنایی با نحوه رفع این مشکل، پرسشگان Maps را ببینید.

  • "OVER_QUERY_LIMIT" نشان می‌دهد که از سهمیه‌تان فراتر رفته‌اید.
  • "REQUEST_DENIED" نشان می‌دهد که درخواستتان رد شده است.
  • "INVALID_REQUEST" معمولاً نشان می‌دهد که پُرسمان (address، components یا latlng) وجود ندارد.
  • "UNKNOWN_ERROR" نشان می‌دهد که درخواست به‌دلیل خطای سرور پردازش نشده است. اگر دوباره امتحان کنید، ممکن است درخواست موفقیت‌آمیز باشد.

پیام‌های خطا

وقتی زمین‌کدیاب کد وضعیتی غیراز OK برمی‌گرداند، ممکن است فیلد error_message دیگری در شیء پاسخ «زمین‌کدیابی» وجود داشته باشد. این فیلد حاوی اطلاعات دقیق‌تری درباره دلایل پشت رمز وضعیت ارائه‌شده است.

نتایج

وقتی زمین‌کدیاب نتایج را برمی‌گرداند، آن‌ها را در آرایه (JSON) results قرار می‌دهد. حتی اگر زمین‌کدیاب هیچ نتیجه‌ای برنگرداند (مثلاً اگر نشانی وجود نداشته باشد)، بازهم آرایه results خالی برمی‌گرداند. (پاسخ‌های XML شامل صفر یا چند عنصر <result> است.)

یک نتیجه معمولی شامل فیلدهای زیر است:

  • آرایه types[] نشان‌دهنده نوع نتیجه برگردانده‌شده است. این آرایه حاوی مجموعه‌ای از صفر یا چند برچسب است که نوع ویژگی برگردانده‌شده در نتیجه را شناسایی می‌کند. برای مثال، زمین‌کدیاب «شیکاگو» «محل» را برمی‌گرداند که نشان می‌دهد «شیکاگو» یک شهر است، و همچنین «سیاسی» را برمی‌گرداند که نشان می‌دهد یک نهاد سیاسی است. برای اطلاعات بیشتر، به انواع نشانی و انواع مؤلفه نشانی مراجعه کنید.
  • formatted_address رشته‌ای است که حاوی نشانی قابل‌خواندن برای انسان این مکان است.

    اغلب این نشانی معادل نشانی پستی است. توجه داشته باشید که برخی کشورها، مانند پادشاهی متحد، به‌دلیل محدودیت‌های صدور پروانه، اجازه توزیع نشانی‌های پستی واقعی را نمی‌دهند.

    نشانی قالب‌بندی‌شده به‌طور منطقی از یک یا چند مؤلفه نشانی تشکیل شده است. برای مثال، نشانی «111 8th Avenue, New York, NY» از بخش‌های زیر تشکیل شده است: «111» (شماره خیابان)، «8th Avenue» (مسیر)، «New York» (شهر)، و «NY» (ایالت امریکا).

    نشانی قالب‌بندی‌شده را به‌صورت برنامه‌نویسی تجزیه نکنید. درعوض باید از مؤلفه‌های نشانی تکی استفاده کنید که پاسخ میانای برنامه‌سازی کاربردی علاوه‌بر فیلد نشانی قالب‌بندی‌شده شامل آن است.

  • address_components[] آرایه‌ای است که حاوی بخش‌های مجزای قابل‌اعمال به این نشانی است.

    هر مؤلفه نشانی معمولاً شامل فیلدهای زیر است:

    • types[] آرایه‌ای است که نوع مؤلفه نشانی را نشان می‌دهد. وقتی هیچ نوع شناخته‌شده‌ای برای آن مؤلفه نشانی وجود نداشته باشد، مؤلفه نشانی ممکن است آرایه انواع خالی داشته باشد. ممکن است میانای برنامه‌سازی کاربردی درصورت نیاز مقادیر نوع جدیدی اضافه کند. برای اطلاعات بیشتر، به انواع نشانی و انواع مؤلفه نشانی مراجعه کنید.
    • long_name شرح نوشتاری کامل یا نام مؤلفه نشانی است که توسط «زمین‌کدیاب» برگردانده شده است.
    • short_name نام متنی اختصاری برای مؤلفه نشانی است (درصورت وجود). برای مثال، مؤلفه نشانی برای ایالت آلاسکا ممکن است long_name «آلاسکا» و short_name «AK» را بااستفاده از اختصار پستی ۲ حرفی داشته باشد.

    به حقایق زیر درباره آرایه address_components[] توجه کنید:

    • آرایه مؤلفه‌های نشانی ممکن است مؤلفه‌های بیشتری نسبت به formatted_address داشته باشد.
    • این آرایه لزوماً شامل همه نهادهای سیاسی که حاوی نشانی هستند نمی‌شود، به‌جز آن‌هایی که در formatted_address گنجانده شده‌اند. برای بازیابی همه نهادهای سیاسی که حاوی نشانی خاصی هستند، باید از زمین‌کدیابی معکوس استفاده کنید و طول/عرض جغرافیایی نشانی را به‌عنوان پارامتر به درخواست ارسال کنید.
    • تضمینی وجود ندارد که قالب پاسخ بین درخواست‌ها یکسان باقی بماند. به‌ویژه، تعداد address_components براساس نشانی درخواست‌شده متفاوت است و می‌تواند درطول زمان برای نشانی یکسان تغییر کند. موقعیت مؤلفه می‌تواند در آرایه تغییر کند. نوع مؤلفه می‌تواند تغییر کند. ممکن است مؤلفه خاصی در پاسخ بعدی وجود نداشته باشد.

    برای مدیریت آرایه مؤلفه‌ها، باید پاسخ را تجزیه کنید و مقادیر مناسب را ازطریق عبارت‌ها انتخاب کنید. راهنمای تجزیه پاسخ را ببینید.

  • postcode_localities[] آرایه‌ای است که حداکثر ۱۰۰ محل موجود در کد پستی را نشان می‌دهد. این فقط زمانی وجود دارد که نتیجه یک کد پستی باشد که شامل چندین محل است.
  • geometry حاوی اطلاعات زیر است:
    • location حاوی مقدار طول و عرض جغرافیایی زمین‌کدیابی‌شده است. برای جستجوی نشانی‌های معمولی، این فیلد معمولاً مهم‌ترین فیلد است.
    • location_type داده‌های بیشتری درباره مکان مشخص‌شده ذخیره می‌کند. درحال‌حاضر از مقادیر زیر پشتیبانی می‌شود:

      • "ROOFTOP" نشان می‌دهد که نتیجه برگردانده‌شده زمین‌کدیاب دقیقی است که برای آن اطلاعات مکان دقیق تا سطح نشانی خیابان داریم.
      • "RANGE_INTERPOLATED" نشان می‌دهد که نتیجه برگردانده‌شده نشان‌دهنده تقریبی (معمولاً در جاده) است که بین دو نقطه دقیق (مانند تقاطع‌ها) درون‌یابی شده است. نتایج درون‌یابی‌شده معمولاً زمانی برگردانده می‌شوند که زمین‌کدیاب‌های پشت‌بام برای نشانی خیابان دردسترس نباشند.
      • "GEOMETRIC_CENTER" نشان می‌دهد که نتیجه برگردانده‌شده مرکز هندسی نتیجه‌ای مثل چندخطی (برای مثال، خیابان) یا چندضلعی (منطقه) است.
      • "APPROXIMATE" نشان می‌دهد که نتیجه برگردانده‌شده تقریبی است.
    • viewport حاوی ناحیه نمایش توصیه‌شده برای نمایش نتیجه برگردانده‌شده است که به‌صورت دو مقدار عرض جغرافیایی و طول جغرافیایی مشخص شده است و گوشه southwest و northeast کادر مرزی ناحیه نمایش را تعریف می‌کند. معمولاً از نمای دید برای قاب‌بندی نتیجه هنگام نمایش آن به کاربر استفاده می‌شود.
    • bounds (به‌صورت اختیاری برگردانده می‌شود) کادر محدودکننده را ذخیره می‌کند که می‌تواند نتیجه برگردانده‌شده را به‌طور کامل دربرگیرد. توجه داشته باشید که این مرزها ممکن است با نمای پیشنهادی مطابقت نداشته باشد. (برای مثال، سانفرانسیسکو شامل جزایر فارالون است که ازنظر فنی بخشی از شهر هستند، اما احتمالاً نباید در نمای هدف برگردانده شوند.)
  • plus_code (به کد مکان باز و کدهای plus مراجعه کنید) یک مرجع مکان کدگذاری‌شده است که از مختصات عرض و طول جغرافیایی مشتق شده است و منطقه‌ای را نشان می‌دهد: ۱/۸۰۰۰ درجه در ۱/۸۰۰۰ درجه (حدود ۱۴ متر در ۱۴ متر در خط استوا) یا کوچک‌تر. در جاهایی که نشانی وجود ندارد (جایی که ساختمان‌ها شماره ندارند یا خیابان‌ها نام ندارند)، می‌توان از کدهای Plus به‌جای نشانی خیابان استفاده کرد. میانای برنامه‌سازی کاربردی همیشه Plus Code برنمی‌گرداند.

    وقتی سرویس plus code را برمی‌گرداند، به‌صورت کد جهانی و کد ترکیبی قالب‌بندی می‌شود:

    • global_code یک کد منطقه ۴ نویسه‌ای و کد محلی ۶ نویسه‌ای یا طولانی‌تر است (849VCWC8+R9).
    • compound_code کد محلی ۶ نویسه‌ای یا طولانی‌تر با مکان صریح است (CWC8+R9, Mountain View, CA, USA). این محتوا را به‌صورت برنامه‌نویسی تجزیه نکنید.
    درصورت دردسترس بودن، میانای برنامه‌سازی کاربردی هم کد جهانی و هم کد ترکیبی را برمی‌گرداند. اما اگر نتیجه در مکانی دورافتاده باشد (برای مثال، اقیانوس یا کویر)، ممکن است فقط کد جهانی برگردانده شود.
  • partial_match نشان می‌دهد که زمین‌کدیاب مطابقت دقیقی برای درخواست اصلی برنگردانده است، هرچند توانسته است بخشی از نشانی درخواستی را مطابقت دهد. شاید بخواهید درخواست اصلی را ازنظر غلط املایی و/یا نشانی ناقص بررسی کنید.

    مطابقت‌های جزئی اغلب برای نشانی‌های خیابانی رخ می‌دهد که در منطقه‌ای که در درخواست ارسال می‌کنید وجود ندارند. وقتی درخواستی با دو یا چند مکان در یک محل مطابقت داشته باشد، ممکن است مطابقت‌های جزئی نیز برگردانده شود. برای مثال، «Hillpar St, Bristol, UK» مطابقت جزئی برای هر دو Henry Street و Henrietta Street برمی‌گرداند. توجه داشته باشید که اگر درخواستی شامل بخش نشانی با املای نادرست باشد، سرویس زمین‌کدیابی ممکن است نشانی جایگزینی پیشنهاد دهد. پیشنهادهایی که به این روش فعال می‌شوند نیز به‌عنوان مطابقت جزئی علامت‌گذاری می‌شوند.

  • place_id شناسه یکتایی است که می‌توان از آن با دیگر میاناهای برنامه‌سازی کاربردی Google استفاده کرد. برای مثال، می‌توانید از place_id در درخواست Places API برای دریافت جزئیات کسب‌وکار محلی، مانند شماره تلفن، ساعت کاری، مرورهای کاربر، و غیره استفاده کنید. نمای کلی شناسه مکان را ببینید.

انواع نشانی و انواع مؤلفه نشانی

آرایه types در پاسخ نشان‌دهنده نوع نشانی است. نمونه‌هایی از انواع نشانی شامل نشانی خیابان، کشور، یا نهاد سیاسی است. آرایه types در فیلد address_component نوع هر بخش از نشانی را نشان می‌دهد. برای مثال، شماره خیابان یا کشور.

نشانی‌ها ممکن است چند نوع داشته باشند. این نوع‌ها ممکن است به‌عنوان «برچسب» درنظر گرفته شوند. برای مثال، بسیاری‌از شهرها با نوع political و locality برچسب‌گذاری شده‌اند.

انواع زیر پشتیبانی می‌شوند و در هر دو آرایه نوع نشانی و نوع مؤلفه نشانی برگردانده می‌شوند:

نوع نشانی شرح
street_address نشانی دقیق خیابان.
route مسیر نام‌گذاری‌شده (مثل «US 101»).
intersection تقاطع اصلی، معمولاً بین دو جاده اصلی.
political نهاد سیاسی. معمولاً این نوع نشان‌دهنده چندضلعی برخی‌از ادارات مدنی است.
country نهاد سیاسی ملی، و معمولاً بالاترین نوع ترتیبی است که توسط «زمین‌کدیاب» برگردانده می‌شود.
administrative_area_level_1 نهاد مدنی رده اول زیر سطح کشور. در ایالات متحده، این سطوح اداری ایالت‌ها هستند. برخی‌از کشورها این سطوح اداری را ندارند. در بیشتر موارد، نام‌های کوتاه administrative_area_level_1 با بخش‌های ISO 3166-2 و دیگر فهرست‌های پرکاربرد مطابقت دارد؛ بااین‌حال، این موضوع تضمین نمی‌شود زیرا نتایج زمین‌کدیابی ما براساس انواع مختلفی از سیگنال‌ها و داده‌های مکان است.
administrative_area_level_2 نهاد مدنی رده دوم زیر سطح کشور. در ایالات متحده، این سطوح اداری شهرستان‌ها هستند. برخی‌از کشورها این سطوح اداری را ندارند.
administrative_area_level_3 نهاد مدنی رده سوم زیر سطح کشور. این نوع نشان‌دهنده تقسیمات کشوری فرعی است. برخی‌از کشورها این سطوح اداری را ندارند.
administrative_area_level_4 نهاد مدنی رده چهارم زیر سطح کشور. این نوع نشان‌دهنده تقسیمات کشوری فرعی است. برخی‌از کشورها این سطوح اداری را ندارند.
administrative_area_level_5 نهاد مدنی رده پنجم زیر سطح کشور. این نوع نشان‌دهنده تقسیمات کشوری فرعی است. برخی‌از کشورها این سطوح اداری را ندارند.
administrative_area_level_6 نهاد مدنی رده ششم زیر سطح کشور. این نوع نشان‌دهنده تقسیمات کشوری فرعی است. برخی‌از کشورها این سطوح اداری را ندارند.
administrative_area_level_7 نهاد مدنی رده هفتم زیر سطح کشور. این نوع نشان‌دهنده تقسیمات کشوری فرعی است. برخی‌از کشورها این سطوح اداری را ندارند.
colloquial_area نام جایگزین رایج برای نهاد.
locality نهاد سیاسی شهر یا شهرک ثبت‌شده.
sublocality نهاد مدنی رده اول زیر سطح محل. برای برخی مکان‌ها ممکن است یکی از انواع اضافی را دریافت کنید: sublocality_level_1 تا sublocality_level_5. هر سطح زیرمنطقه یک نهاد مدنی است. اعداد بزرگ‌تر نشان‌دهنده منطقه جغرافیایی کوچک‌تر است.
neighborhood محله‌ای که نام دارد.
premise مکانی نام‌گذاری‌شده، معمولاً ساختمان یا مجموعه‌ای از ساختمان‌ها با نامی مشترک.
subpremise نهادی قابل‌آدرس‌دهی در سطحی پایین‌تر از ملک، مانند آپارتمان، واحد، یا سوئیت.
plus_code مرجع مکان کدگذاری‌شده، برگرفته از عرض جغرافیایی و طول جغرافیایی. در جاهایی که نشانی خیابان وجود ندارد (ساختمان‌ها شماره ندارند یا خیابان‌ها نام ندارند)، می‌توان از Plus Code به‌جای نشانی خیابان استفاده کرد. برای جزئیات، به https://plus.codes بروید.
postal_code کد پستی که برای نشانی پستی در کشور استفاده می‌شود.
natural_feature عارضه طبیعی برجسته.
airport فرودگاه.
park پارک نام‌گذاری‌شده.
point_of_interest نقطه موردعلاقه نام‌گذاری‌شده. معمولاً این «نقاط موردعلاقه» نهادهای محلی برجسته‌ای هستند که به‌راحتی در دسته دیگری قرار نمی‌گیرند، مثل «ساختمان امپایر استیت» یا «برج ایفل».

فهرست خالی از انواع نشان می‌دهد که هیچ نوع شناخته‌شده‌ای برای مؤلفه نشانی خاص وجود ندارد (برای مثال، Lieu-dit در فرانسه).

علاوه‌بر موارد بالا، مؤلفه‌های نشانی ممکن است شامل انواع فهرست‌شده در زیر باشد.

نوع عنصر نشانی شرح
floor طبقه نشانی ساختمان.
establishment معمولاً مکانی است که هنوز دسته‌بندی نشده است.
landmark مکانی در این اطراف که به‌عنوان مرجع برای کمک به پیمایش استفاده می‌شود.
point_of_interest نقطه موردعلاقه نام‌گذاری‌شده.
parking پارکینگ یا سازه پارکینگ.
post_box صندوق پستی خاص.
postal_town گروه‌بندی مناطق جغرافیایی، مثل locality و sublocality، که برای نشانی‌های پستی در برخی کشورها استفاده می‌شود.
room اتاق نشانی ساختمان.
street_number شماره دقیق خیابان.
bus_station، train_station و transit_station مکان ایستگاه اتوبوس، قطار، یا حمل‌ونقل عمومی.

سوگیری ناحیه نمایش

در درخواست «زمین‌کدیابی»، می‌توانید به سرویس «زمین‌کدیابی» دستور دهید که نتایج را در نمای هدف مشخصی (که به‌صورت کادر مرزی بیان می‌شود) ترجیح دهد. این کار را در نشانی وب درخواست با تنظیم پارامتر bounds انجام می‌دهید.

پارامتر bounds مختصات طول/عرض جغرافیایی گوشه‌های جنوب غربی و شمال شرقی این چارگوش مرزی را بااستفاده از نویسه خط عمودی (|) برای جدا کردن مختصات تعریف می‌کند.

برای مثال، زمین‌کدیاب برای «واشنگتن» معمولاً ایالت واشنگتن در ایالات متحده را برمی‌گرداند:

درخواست:

https://maps.googleapis.com/maps/api/geocode/json?address=Washington&key=YOUR_API_KEY

پاسخ:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Washington",
               "short_name" : "WA",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United States",
               "short_name" : "US",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Washington, USA",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 49.0024442,
                  "lng" : -116.91558
               },
               "southwest" : {
                  "lat" : 45.543541,
                  "lng" : -124.8489739
               }
            },
            "location" : {
               "lat" : 47.7510741,
               "lng" : -120.7401385
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 49.0024442,
                  "lng" : -116.91558
               },
               "southwest" : {
                  "lat" : 45.543541,
                  "lng" : -124.8489739
               }
            }
         },
         "place_id" : "ChIJ-bDD5__lhVQRuvNfbGh4QpQ",
         "types" : [ "administrative_area_level_1", "political" ]
      }
   ],
   "status" : "OK"
}

بااین‌حال، افزودن آرگومان bounds که جعبه مرزی را در اطراف بخش شمال شرقی ایالات متحده تعریف می‌کند، باعث می‌شود این زمین‌کدیاب شهر واشنگتن دی.سی. را برگرداند:

درخواست:

https://maps.googleapis.com/maps/api/geocode/json?address=Washington&bounds=36.47,-84.72%7C43.39,-65.90&key=YOUR_API_KEY

پاسخ:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Washington",
               "short_name" : "Washington",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "District of Columbia",
               "short_name" : "District of Columbia",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "District of Columbia",
               "short_name" : "DC",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United States",
               "short_name" : "US",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Washington, DC, USA",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 38.9958641,
                  "lng" : -76.90939299999999
               },
               "southwest" : {
                  "lat" : 38.7916449,
                  "lng" : -77.119759
               }
            },
            "location" : {
               "lat" : 38.9071923,
               "lng" : -77.03687069999999
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 38.9958641,
                  "lng" : -76.90939299999999
               },
               "southwest" : {
                  "lat" : 38.7916449,
                  "lng" : -77.119759
               }
            }
         },
         "place_id" : "ChIJW-T2Wt7Gt4kRKl2I1CJFUsI",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

سوگیری منطقه

در درخواست «زمین‌کدیابی»، می‌توانید بااستفاده از پارامتر region به سرویس «زمین‌کدیابی» دستور دهید نتایج را براساس منطقه‌ای خاص برگرداند. این پارامتر یک آرگومان ccTLD (دامنه سطح بالای کد کشور) را می‌گیرد که سوگیری منطقه را مشخص می‌کند. اکثر کدهای ccTLD با کدهای ISO 3166-1 یکسان هستند، با چند استثنای قابل‌توجه. برای مثال، ccTLD پادشاهی متحد «uk»‏ (.co.uk) است، درحالی‌که کد ISO 3166-1 آن «gb» است (که ازنظر فنی برای نهاد «پادشاهی متحد بریتانیای کبیر و ایرلند شمالی» است).

نتایج زمین‌کدیابی می‌تواند برای هر دامنه‌ای که برنامه اصلی Google Maps به‌طور رسمی در آن راه‌اندازی شده است، سوگیری داشته باشد. توجه داشته باشید که سوگیری فقط نتایج مربوط به دامنه خاصی را ترجیح می‌دهد؛ اگر نتایج مرتبط‌تری خارج از این دامنه وجود داشته باشد، ممکن است آن‌ها نیز گنجانده شوند.

برای مثال، زمین‌کدیابی برای «Toledo» این نتیجه را برمی‌گرداند، زیرا دامنه پیش‌فرض برای Geocoding API روی ایالات متحده تنظیم شده است. درخواست:

https://maps.googleapis.com/maps/api/geocode/json?address=Toledo&key=YOUR_API_KEY

پاسخ:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Toledo",
               "short_name" : "Toledo",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Lucas County",
               "short_name" : "Lucas County",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "Ohio",
               "short_name" : "OH",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United States",
               "short_name" : "US",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Toledo, OH, USA",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 41.732844,
                  "lng" : -83.454229
               },
               "southwest" : {
                  "lat" : 41.580266,
                  "lng" : -83.69423700000002
               }
            },
            "location" : {
               "lat" : 41.6639383,
               "lng" : -83.55521200000001
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 41.732844,
                  "lng" : -83.454229
               },
               "southwest" : {
                  "lat" : 41.580266,
                  "lng" : -83.69423700000002
               }
            }
         },
         "place_id" : "ChIJeU4e_C2HO4gRRcM6RZ_IPHw",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

درخواست «زمین‌کدیابی» برای «Toledo» با region=es (اسپانیا) شهر اسپانیایی را برمی‌گرداند.

درخواست:

https://maps.googleapis.com/maps/api/geocode/json?address=Toledo&region=es&key=YOUR_API_KEY

پاسخ:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Toledo",
               "short_name" : "Toledo",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Toledo",
               "short_name" : "TO",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "Castile-La Mancha",
               "short_name" : "CM",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "Spain",
               "short_name" : "ES",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Toledo, Spain",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 39.88605099999999,
                  "lng" : -3.9192423
               },
               "southwest" : {
                  "lat" : 39.8383676,
                  "lng" : -4.0796176
               }
            },
            "location" : {
               "lat" : 39.8628316,
               "lng" : -4.027323099999999
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 39.88605099999999,
                  "lng" : -3.9192423
               },
               "southwest" : {
                  "lat" : 39.8383676,
                  "lng" : -4.0796176
               }
            }
         },
         "place_id" : "ChIJ8f21C60Lag0R_q11auhbf8Y",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

فیلتر کردن مؤلفه

در پاسخ Geocoding،‏ Geocoding API می‌تواند نتایج نشانی را محدود به منطقه‌ای خاص برگرداند. می‌توانید محدودیت را بااستفاده از فیلتر components مشخص کنید. فیلتر شامل فهرستی از جفت‌های component:value است که با خط عمودی (|) از هم جدا شده‌اند. مقادیر فیلتر از همان روش‌های اصلاح املایی و تطابق جزئی که سایر درخواست‌های «زمین‌کدیابی» پشتیبانی می‌کنند پشتیبانی می‌کند. اگر زمین‌کدیاب مطابقت جزئی برای فیلتر مؤلفه پیدا کند، پاسخ حاوی فیلد partial_match خواهد بود.

components که می‌تواند فیلتر شود شامل موارد زیر است:

  • ‫postal_code با postal_code و postal_code_prefix مطابقت دارد.
  • country با نام کشور یا کد کشور دوحرفی ISO 3166-1 مطابقت دارد. این میانای برنامه‌سازی کاربردی از استاندارد ISO برای تعریف کشورها پیروی می‌کند و فیلتر کردن زمانی بهترین عملکرد را دارد که از کد ISO مربوط به کشور استفاده شود.

components زیر ممکن است برای تأثیرگذاری بر نتایج استفاده شود، اما اعمال نخواهد شد:

  • route با نام کوتاه یا بلند مسیر مطابقت دارد.
  • locality با locality و sublocality نوع مطابقت دارد.
  • administrative_area با همه سطوح administrative_area مطابقت دارد.

نکاتی درباره فیلتر کردن مؤلفه:

  • این فیلترهای مؤلفه را در درخواست‌ها تکرار نکنید، درغیراین‌صورت میانای برنامه‌سازی کاربردی Invalid_request: country، postal_code، route را برمی‌گرداند
  • اگر درخواست حاوی فیلترهای مؤلفه تکراری باشد، API آن فیلترها را به‌عنوان AND ارزیابی می‌کند، نه OR.
  • نتایج با Google Maps سازگار است که گاهی اوقات پاسخ‌های غیرمنتظره ZERO_RESULTS ارائه می‌دهد. استفاده از «تکمیل خودکار جا» ممکن است در برخی موارد استفاده نتایج بهتری ارائه دهد. برای کسب اطلاعات بیشتر، این پرسشگان را ببینید.
  • برای هر مؤلفه نشانی، آن را در پارامتر address یا در فیلتر components مشخص کنید، اما نه در هر دو. مشخص کردن مقادیر یکسان در هر دو ممکن است منجر به ZERO_RESULTS شود.

زمین‌کدیاب برای «High St, Hastings» با components=country:GB نتیجه‌ای در هیستینگز، انگلستان برمی‌گرداند، نه در هیستینگز-آن-هادسون، ایالات متحده.

درخواست:

https://maps.googleapis.com/maps/api/geocode/json?address=high+st+hasting&components=country:GB&key=YOUR_API_KEY

پاسخ:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "High Street",
               "short_name" : "High St",
               "types" : [ "route" ]
            },
            {
               "long_name" : "Hastings",
               "short_name" : "Hastings",
               "types" : [ "postal_town" ]
            },
            {
               "long_name" : "East Sussex",
               "short_name" : "East Sussex",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "England",
               "short_name" : "England",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "United Kingdom",
               "short_name" : "GB",
               "types" : [ "country", "political" ]
            },
            {
               "long_name" : "TN34 3EY",
               "short_name" : "TN34 3EY",
               "types" : [ "postal_code" ]
            }
         ],
         "formatted_address" : "High St, Hastings TN34 3EY, UK",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 50.8601041,
                  "lng" : 0.5957329
               },
               "southwest" : {
                  "lat" : 50.8559061,
                  "lng" : 0.5906163
               }
            },
            "location" : {
               "lat" : 50.85830319999999,
               "lng" : 0.5924594
            },
            "location_type" : "GEOMETRIC_CENTER",
            "viewport" : {
               "northeast" : {
                  "lat" : 50.8601041,
                  "lng" : 0.5957329
               },
               "southwest" : {
                  "lat" : 50.8559061,
                  "lng" : 0.5906163
               }
            }
         },
         "partial_match" : true,
         "place_id" : "ChIJ-Ws929sa30cRKgsMNVkPyws",
         "types" : [ "route" ]
      }
   ],
   "status" : "OK"
}

درخواست زمین‌کدیاب برای منطقه «سانتا کروز» با components=country:ES «سانتا کروز د تنریفه» را در جزایر قناری، اسپانیا برمی‌گرداند.

درخواست:

https://maps.googleapis.com/maps/api/geocode/json?components=locality:santa+cruz|country:ES&key=YOUR_API_KEY

پاسخ:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Santa Cruz de Tenerife",
               "short_name" : "Santa Cruz de Tenerife",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Santa Cruz de Tenerife",
               "short_name" : "TF",
               "types" : [ "administrative_area_level_2", "political" ]
            },
            {
               "long_name" : "Canary Islands",
               "short_name" : "CN",
               "types" : [ "administrative_area_level_1", "political" ]
            },
            {
               "long_name" : "Spain",
               "short_name" : "ES",
               "types" : [ "country", "political" ]
            }
         ],
         "formatted_address" : "Santa Cruz de Tenerife, Spain",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 28.487616,
                  "lng" : -16.2356646
               },
               "southwest" : {
                  "lat" : 28.4280248,
                  "lng" : -16.3370045
               }
            },
            "location" : {
               "lat" : 28.4636296,
               "lng" : -16.2518467
            },
            "location_type" : "APPROXIMATE",
            "viewport" : {
               "northeast" : {
                  "lat" : 28.487616,
                  "lng" : -16.2356646
               },
               "southwest" : {
                  "lat" : 28.4280248,
                  "lng" : -16.3370045
               }
            }
         },
         "place_id" : "ChIJcUElzOzMQQwRLuV30nMUEUM",
         "types" : [ "locality", "political" ]
      }
   ],
   "status" : "OK"
}

فیلتر کردن مؤلفه فقط درصورتی پاسخ ZERO_RESULTS را برمی‌گرداند که فیلترهایی ارائه دهید که یکدیگر را مستثنی کنند.

درخواست:

https://maps.googleapis.com/maps/api/geocode/json?components=administrative_area:TX|country:FR&key=YOUR_API_KEY

پاسخ:

{
   "results" : [],
   "status" : "ZERO_RESULTS"
}

می‌توانید بااستفاده از فیلتر components، پُرسمان‌های معتبری بدون پارامتر نشانی ایجاد کنید. (هنگام زمین‌کدیابی نشانی کامل، اگر درخواست حاوی نام و شماره ساختمان‌ها باشد، پارامتر address الزامی است.)

درخواست:

https://maps.googleapis.com/maps/api/geocode/json?components=route:Annankatu|administrative_area:Helsinki|country:Finland&key=YOUR_API_KEY

پاسخ:

{
   "results" : [
      {
         "address_components" : [
            {
               "long_name" : "Annankatu",
               "short_name" : "Annankatu",
               "types" : [ "route" ]
            },
            {
               "long_name" : "Helsinki",
               "short_name" : "HKI",
               "types" : [ "locality", "political" ]
            },
            {
               "long_name" : "Finland",
               "short_name" : "FI",
               "types" : [ "country", "political" ]
            },
            {
               "long_name" : "00101",
               "short_name" : "00101",
               "types" : [ "postal_code" ]
            }
         ],
         "formatted_address" : "Annankatu, 00101 Helsinki, Finland",
         "geometry" : {
            "bounds" : {
               "northeast" : {
                  "lat" : 60.168997,
                  "lng" : 24.9433353
               },
               "southwest" : {
                  "lat" : 60.16226160000001,
                  "lng" : 24.9332897
               }
            },
            "location" : {
               "lat" : 60.1657808,
               "lng" : 24.938451
            },
            "location_type" : "GEOMETRIC_CENTER",
            "viewport" : {
               "northeast" : {
                  "lat" : 60.168997,
                  "lng" : 24.9433353
               },
               "southwest" : {
                  "lat" : 60.16226160000001,
                  "lng" : 24.9332897
               }
            }
         },
         "place_id" : "ChIJARW7C8sLkkYRgl4je4-RPUM",
         "types" : [ "route" ]
      }
   ],
   "status" : "OK"
}