জিওকোডিং অনুরোধ এবং প্রতিক্রিয়া

অনুরোধ

একটি জিওকোডিং API অনুরোধ নিম্নলিখিত ফর্ম নেয়:

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

যেখানে outputFormat নিম্নলিখিত মানগুলির মধ্যে একটি হতে পারে:

  • json (প্রস্তাবিত) জাভাস্ক্রিপ্ট অবজেক্ট নোটেশন (JSON) এ আউটপুট নির্দেশ করে; বা
  • xml XML-এ আউটপুট নির্দেশ করে

HTTPS প্রয়োজন।

কিছু প্যারামিটার প্রয়োজন যখন কিছু ঐচ্ছিক। ইউআরএল-এ স্ট্যান্ডার্ড হিসাবে, অ্যাম্পারস্যান্ড ( & ) অক্ষর ব্যবহার করে প্যারামিটারগুলি আলাদা করা হয়।

এই পৃষ্ঠার বাকি অংশে জিওকোডিং এবং রিভার্স জিওকোডিং আলাদাভাবে বর্ণনা করা হয়েছে, কারণ প্রতিটি ধরনের অনুরোধের জন্য বিভিন্ন প্যারামিটার উপলব্ধ।

জিওকোডিং (অক্ষাংশ/দ্রাঘিমাংশ সন্ধান) পরামিতি

একটি জিওকোডিং অনুরোধে প্রয়োজনীয় পরামিতি:

  • key — আপনার অ্যাপ্লিকেশনের API কী। এই কী কোটা ব্যবস্থাপনার উদ্দেশ্যে আপনার আবেদনকে চিহ্নিত করে। কিভাবে একটি চাবি পেতে শিখুন.
  • আপনাকে অবশ্যই একটি অনুরোধে address বা components বা উভয়ই উল্লেখ করতে হবে:

    • address — রাস্তার ঠিকানা বা প্লাস কোড যা আপনি জিওকোড করতে চান। সংশ্লিষ্ট দেশের জাতীয় ডাক পরিষেবা দ্বারা ব্যবহৃত বিন্যাস অনুসারে ঠিকানাগুলি উল্লেখ করুন। ঠিকানার অতিরিক্ত উপাদান যেমন ব্যবসার নাম এবং ইউনিট, স্যুট বা ফ্লোর নম্বর এড়ানো উচিত। রাস্তার ঠিকানা উপাদানগুলি স্পেস দ্বারা সীমাবদ্ধ করা উচিত (এখানে url-escaped হিসাবে %20 দেখানো হয়েছে):
      address=24%20Sussex%20Drive%20Ottawa%20ON
      এখানে দেখানো হিসাবে প্লাস কোডগুলি ফর্ম্যাট করুন (প্লাস চিহ্নগুলি url-এস্কেপড %2B এবং স্পেসগুলি url-এস্কেপ করা হয়েছে %20 ):
      • গ্লোবাল কোড হল একটি 4 অক্ষরের এলাকা কোড এবং 6 অক্ষর বা তার বেশি স্থানীয় কোড (849VCWC8+R9 হল 849VCWC8%2BR9 )।
      • যৌগিক কোড হল একটি 6 অক্ষর বা দীর্ঘ স্থানীয় কোড যার একটি স্পষ্ট অবস্থান (CWC8+R9 Mountain View, CA, USA হল CWC8%2BR9%20Mountain%20View%20CA%20USA )।
    • components - একটি পাইপ ( | ) দ্বারা পৃথক উপাদান সহ একটি উপাদান ফিল্টার। একটি address প্রদান করা হলে উপাদান ফিল্টার একটি ঐচ্ছিক পরামিতি হিসাবে গৃহীত হয়। উপাদান ফিল্টারের প্রতিটি উপাদান একটি component:value জোড়া, এবং জিওকোডার থেকে ফলাফল সম্পূর্ণরূপে সীমাবদ্ধ করে। নীচে উপাদান ফিল্টারিং সম্পর্কে আরও তথ্য দেখুন।

অতিরিক্ত নির্দেশিকা জন্য FAQ দেখুন.

একটি জিওকোডিং অনুরোধে ঐচ্ছিক পরামিতি:

  • bounds — ভিউপোর্টের বাউন্ডিং বক্স যার মধ্যে জিওকোডের ফলাফলগুলিকে আরও স্পষ্টভাবে বায়াস করতে হবে। এই প্যারামিটারটি শুধুমাত্র জিওকোডারের ফলাফলকে প্রভাবিত করবে, সম্পূর্ণরূপে সীমাবদ্ধ করবে না। (আরও তথ্যের জন্য নীচে ভিউপোর্ট বায়াসিং দেখুন।)
  • language - যে ভাষায় ফলাফল দিতে হবে।
    • সমর্থিত ভাষার তালিকা দেখুন। Google প্রায়ই সমর্থিত ভাষা আপডেট করে, তাই এই তালিকাটি সম্পূর্ণ নাও হতে পারে।
    • language সরবরাহ করা না হলে, জিওকোডার Accept-Language হেডারে উল্লেখিত পছন্দের ভাষা ব্যবহার করার চেষ্টা করে, অথবা যে ডোমেনের স্থানীয় ভাষা থেকে অনুরোধ পাঠানো হয়েছে।
    • জিওকোডার একটি রাস্তার ঠিকানা প্রদান করার জন্য যথাসাধ্য চেষ্টা করে যা ব্যবহারকারী এবং স্থানীয় উভয়ের জন্যই পাঠযোগ্য। সেই লক্ষ্য অর্জনের জন্য, এটি স্থানীয় ভাষায় রাস্তার ঠিকানা ফেরত দেয়, পছন্দের ভাষা পর্যবেক্ষণ করে প্রয়োজনে ব্যবহারকারীর দ্বারা পাঠযোগ্য একটি স্ক্রিপ্টে প্রতিলিপি করা হয়। অন্য সব ঠিকানা পছন্দের ভাষায় ফেরত দেওয়া হয়। ঠিকানার উপাদানগুলি একই ভাষায় ফেরত দেওয়া হয়, যা প্রথম উপাদান থেকে বেছে নেওয়া হয়।
    • পছন্দের ভাষায় নাম না পাওয়া গেলে, জিওকোডার সবচেয়ে কাছের মিল ব্যবহার করে।
    • পছন্দের ভাষাটির ফলাফলের সেটের উপর একটি ছোট প্রভাব রয়েছে যা API ফেরত দিতে বেছে নেয় এবং যে ক্রমে সেগুলি ফেরত দেওয়া হয়। জিওকোডার ভাষার উপর নির্ভর করে সংক্ষেপণগুলিকে ভিন্নভাবে ব্যাখ্যা করে, যেমন রাস্তার প্রকারের সংক্ষিপ্ত রূপ, বা প্রতিশব্দ যা এক ভাষায় বৈধ হতে পারে কিন্তু অন্য ভাষায় নয়। উদাহরণস্বরূপ, utca এবং tér হাঙ্গেরিয়ান ভাষায় যথাক্রমে রাস্তা এবং বর্গক্ষেত্রের সমার্থক শব্দ।
  • region — অঞ্চল কোড, একটি ccTLD ("টপ-লেভেল ডোমেন") দুই-অক্ষরের মান হিসাবে নির্দিষ্ট করা হয়েছে। এই প্যারামিটারটি শুধুমাত্র জিওকোডারের ফলাফলকে প্রভাবিত করবে, সম্পূর্ণরূপে সীমাবদ্ধ করবে না। (আরও তথ্যের জন্য নীচে অঞ্চলের পক্ষপাতিত্ব দেখুন।) প্যারামিটারটি প্রযোজ্য আইনের উপর ভিত্তি করে ফলাফলকেও প্রভাবিত করতে পারে।
  • components - একটি পাইপ ( | ) দ্বারা পৃথক উপাদান সহ একটি উপাদান ফিল্টার। অনুরোধে কোনো address না থাকলে উপাদান ফিল্টার প্রয়োজন । উপাদান ফিল্টারের প্রতিটি উপাদান একটি component:value জোড়া, এবং জিওকোডার থেকে ফলাফল সম্পূর্ণরূপে সীমাবদ্ধ করে। নীচে উপাদান ফিল্টারিং সম্পর্কে আরও তথ্য দেখুন।
  • extra_computations — প্রতিক্রিয়াতে নিম্নলিখিত অতিরিক্ত বৈশিষ্ট্যগুলি নির্দিষ্ট করতে এই প্যারামিটারটি ব্যবহার করুন: একই API অনুরোধের জন্য এই বৈশিষ্ট্যগুলির একাধিক সক্রিয় করতে, প্রতিটি বৈশিষ্ট্যের অনুরোধে extra_computations প্যারামিটার অন্তর্ভুক্ত করুন, উদাহরণস্বরূপ:
    extra_computations=ADDRESS_DESCRIPTORS&extra_computations=BUILDING_AND_ENTRANCES

প্রতিক্রিয়া

জিওকোডিং প্রতিক্রিয়াগুলি URL অনুরোধের মধ্যে output ফ্ল্যাগ দ্বারা নির্দেশিত বিন্যাসে বা ডিফল্টরূপে JSON বিন্যাসে ফেরত দেওয়া হয়।

এই উদাহরণে, জিওকোডিং এপিআই "1600 অ্যাম্ফিথিয়েটার পার্কওয়ে, মাউন্টেন ভিউ, CA" ঠিকানায় একটি প্রশ্নের জন্য একটি json প্রতিক্রিয়ার অনুরোধ করে।

এই অনুরোধটি 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" অ্যারেতে শুধুমাত্র একটি এন্ট্রি ফেরত দেওয়া হয়, যদিও ঠিকানার প্রশ্নগুলি অস্পষ্ট হলে জিওকোডার বেশ কয়েকটি ফলাফল ফিরিয়ে দিতে পারে।

এক্সএমএল

<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 গাছ প্রক্রিয়াকরণের জন্য কিছু যত্নের প্রয়োজন, যাতে আপনি সঠিক নোড এবং উপাদানগুলি উল্লেখ করেন। আউটপুট প্রক্রিয়াকরণের জন্য কিছু প্রস্তাবিত নকশা প্যাটার্নের জন্য XPath সহ XML পার্সিং দেখুন।

  • XML ফলাফল একটি রুট <GeocodeResponse> উপাদানে মোড়ানো হয়।
  • JSON বহুবচন অ্যারে ( types ) দ্বারা একাধিক উপাদান সহ এন্ট্রি নির্দেশ করে, যখন XML একাধিক একবচন উপাদান ( <type> ) ব্যবহার করে এইগুলিকে নির্দেশ করে।
  • ফাঁকা উপাদানগুলিকে JSON-এ খালি অ্যারেগুলির মাধ্যমে নির্দেশিত করা হয়, কিন্তু XML-এ এই ধরনের কোনো উপাদানের অনুপস্থিতির দ্বারা। একটি প্রতিক্রিয়া যা কোন ফলাফল তৈরি করে না তা JSON-এ একটি খালি results অ্যারে ফিরিয়ে দেবে, কিন্তু XML-এ কোন <result> উপাদান নেই, উদাহরণস্বরূপ।

স্ট্যাটাস কোড

জিওকোডিং প্রতিক্রিয়া অবজেক্টের মধ্যে "status" ক্ষেত্রে অনুরোধের স্থিতি রয়েছে এবং জিওকোডিং কেন কাজ করছে না তা ট্র্যাক করতে আপনাকে সাহায্য করার জন্য ডিবাগিং তথ্য থাকতে পারে। "status" ক্ষেত্রে নিম্নলিখিত মান থাকতে পারে:

  • "OK" নির্দেশ করে যে কোন ত্রুটি ঘটেনি; ঠিকানাটি সফলভাবে পার্স করা হয়েছে এবং অন্তত একটি জিওকোড ফেরত দেওয়া হয়েছে।
  • "ZERO_RESULTS" ইঙ্গিত করে যে জিওকোড সফল হয়েছে কিন্তু কোনো ফলাফল দেয়নি৷ এটি ঘটতে পারে যদি জিওকোডারটি একটি অস্তিত্বহীন address পাস করা হয়।
  • OVER_DAILY_LIMIT নিম্নলিখিত যে কোনো একটি নির্দেশ করে:
    • API কী অনুপস্থিত বা অবৈধ।
    • আপনার অ্যাকাউন্টে বিলিং সক্ষম করা হয়নি।
    • একটি স্ব-আরোপিত ব্যবহারের সীমা অতিক্রম করা হয়েছে৷
    • প্রদত্ত অর্থপ্রদানের পদ্ধতিটি আর বৈধ নয় (উদাহরণস্বরূপ, একটি ক্রেডিট কার্ডের মেয়াদ শেষ হয়ে গেছে)।

    এটি কীভাবে ঠিক করবেন তা শিখতে মানচিত্র FAQ দেখুন৷

  • "OVER_QUERY_LIMIT" নির্দেশ করে যে আপনি আপনার কোটা অতিক্রম করেছেন৷
  • "REQUEST_DENIED" নির্দেশ করে যে আপনার অনুরোধ প্রত্যাখ্যান করা হয়েছে৷
  • "INVALID_REQUEST" সাধারণত নির্দেশ করে যে কোয়েরি ( address , components বা latlng ) অনুপস্থিত৷
  • "UNKNOWN_ERROR" নির্দেশ করে যে সার্ভার ত্রুটির কারণে অনুরোধটি প্রক্রিয়া করা যায়নি৷ আপনি আবার চেষ্টা করলে অনুরোধ সফল হতে পারে।

ত্রুটি বার্তা

যখন জিওকোডার OK ব্যতীত একটি স্ট্যাটাস কোড ফেরত দেয়, তখন জিওকোডিং প্রতিক্রিয়া অবজেক্টের মধ্যে একটি অতিরিক্ত error_message ক্ষেত্র থাকতে পারে। এই ক্ষেত্রটিতে প্রদত্ত স্থিতি কোডের পিছনের কারণগুলি সম্পর্কে আরও বিশদ তথ্য রয়েছে৷

ফলাফল

যখন জিওকোডার ফলাফল প্রদান করে, তখন এটি তাদের একটি (JSON) results অ্যারের মধ্যে রাখে। জিওকোডার কোনো ফলাফল না দিলেও (যেমন ঠিকানাটি বিদ্যমান না থাকলে) এটি এখনও একটি খালি results অ্যারে প্রদান করে। (এক্সএমএল প্রতিক্রিয়া শূন্য বা তার বেশি <result> উপাদান নিয়ে গঠিত।)

একটি সাধারণ ফলাফলে নিম্নলিখিত ক্ষেত্রগুলি থাকে:

  • types[] অ্যারে প্রত্যাবর্তিত ফলাফলের ধরন নির্দেশ করে। এই অ্যারেতে শূন্য বা তার বেশি ট্যাগের একটি সেট রয়েছে যা ফলাফলে প্রত্যাবর্তিত বৈশিষ্ট্যের ধরণ সনাক্ত করে। উদাহরণস্বরূপ, "শিকাগো" এর একটি জিওকোড "স্থানীয়তা" প্রদান করে যা নির্দেশ করে যে "শিকাগো" একটি শহর, এবং এছাড়াও "রাজনৈতিক" প্রদান করে যা নির্দেশ করে যে এটি একটি রাজনৈতিক সত্তা। উপাদানগুলির একটি খালি টাইপ অ্যারে থাকতে পারে যখন সেই ঠিকানা উপাদানটির জন্য কোনও পরিচিত প্রকার নেই। API প্রয়োজন অনুযায়ী নতুন ধরনের মান যোগ করতে পারে। আরও তথ্যের জন্য, ঠিকানার ধরন এবং ঠিকানা উপাদান দেখুন।
  • formatted_address হল একটি স্ট্রিং যাতে এই অবস্থানের মানুষের-পাঠযোগ্য ঠিকানা রয়েছে।

    প্রায়শই এই ঠিকানাটি ডাক ঠিকানার সমতুল্য। উল্লেখ্য যে কিছু দেশ, যেমন ইউনাইটেড কিংডম, লাইসেন্সিং বিধিনিষেধের কারণে সত্যিকারের ডাক ঠিকানা বিতরণের অনুমতি দেয় না।

    ফরম্যাট করা ঠিকানা যৌক্তিকভাবে এক বা একাধিক ঠিকানা উপাদান নিয়ে গঠিত। উদাহরণস্বরূপ, ঠিকানা "111 8th Avenue, New York, NY" নিম্নলিখিত উপাদানগুলি নিয়ে গঠিত: "111" (রাস্তার নম্বর), "8th Avenue" (রুট), "New York" (শহর) এবং "NY" "(মার্কিন রাষ্ট্র)।

    ফরম্যাট করা ঠিকানাকে প্রোগ্রাম্যাটিকভাবে পার্স করবেন না। পরিবর্তে আপনার পৃথক ঠিকানা উপাদানগুলি ব্যবহার করা উচিত, যা এপিআই প্রতিক্রিয়া ফর্ম্যাট করা ঠিকানা ক্ষেত্র ছাড়াও অন্তর্ভুক্ত করে।

  • address_components[] হল একটি অ্যারে যেখানে এই ঠিকানার জন্য প্রযোজ্য পৃথক উপাদান রয়েছে।

    প্রতিটি ঠিকানা উপাদান সাধারণত নিম্নলিখিত ক্ষেত্র ধারণ করে:

    • types[] একটি অ্যারে যা ঠিকানা উপাদানের ধরন নির্দেশ করে। সমর্থিত প্রকারের তালিকা দেখুন।
    • long_name হল জিওকোডার দ্বারা প্রত্যাবর্তিত ঠিকানা উপাদানটির সম্পূর্ণ পাঠ্য বিবরণ বা নাম।
    • short_name হল ঠিকানা উপাদানের জন্য একটি সংক্ষিপ্ত পাঠ্য নাম, যদি উপলব্ধ থাকে। উদাহরণস্বরূপ, আলাস্কা রাজ্যের একটি ঠিকানা উপাদানে 2-অক্ষরের ডাক সংক্ষেপণ ব্যবহার করে "আলাস্কা" এর একটি long_name এবং "AK" এর একটি short_name থাকতে পারে।

    address_components[] অ্যারে সম্পর্কে নিম্নলিখিত তথ্যগুলি নোট করুন:

    • ঠিকানা উপাদানগুলির বিন্যাসে formatted_address চেয়ে বেশি উপাদান থাকতে পারে।
    • বিন্যাসে অগত্যা সমস্ত রাজনৈতিক সত্ত্বাকে অন্তর্ভুক্ত করে না যেগুলির মধ্যে একটি ঠিকানা রয়েছে, formatted_address এ অন্তর্ভুক্ত থাকা ছাড়া। একটি নির্দিষ্ট ঠিকানা রয়েছে এমন সমস্ত রাজনৈতিক সত্তা পুনরুদ্ধার করতে, আপনাকে অনুরোধের পরামিতি হিসাবে ঠিকানাটির অক্ষাংশ/দ্রাঘিমাংশ পাস করে বিপরীত জিওকোডিং ব্যবহার করা উচিত।
    • অনুরোধের মধ্যে প্রতিক্রিয়ার বিন্যাস একই থাকার নিশ্চয়তা দেওয়া হয় না। বিশেষ করে, address_components সংখ্যা অনুরোধ করা ঠিকানার উপর ভিত্তি করে পরিবর্তিত হয় এবং একই ঠিকানার জন্য সময়ের সাথে সাথে পরিবর্তন হতে পারে। একটি উপাদান অ্যারে অবস্থান পরিবর্তন করতে পারেন. উপাদানের ধরন পরিবর্তন হতে পারে। পরবর্তী প্রতিক্রিয়ায় একটি নির্দিষ্ট উপাদান অনুপস্থিত হতে পারে।

    উপাদানগুলির অ্যারে পরিচালনা করতে, আপনার প্রতিক্রিয়া বিশ্লেষণ করা উচিত এবং অভিব্যক্তির মাধ্যমে উপযুক্ত মান নির্বাচন করা উচিত। একটি প্রতিক্রিয়া পার্স করার নির্দেশিকা দেখুন।

  • postcode_localities[] হল একটি বিন্যাস যা একটি পোস্টাল কোডে থাকা 100টি পর্যন্ত লোকালয়কে নির্দেশ করে। এটি শুধুমাত্র তখনই উপস্থিত হয় যখন ফলাফলটি একটি পোস্টাল কোড হয় যাতে একাধিক এলাকা থাকে৷
  • geometry নিম্নলিখিত তথ্য রয়েছে:
    • location জিওকোডেড অক্ষাংশ, দ্রাঘিমাংশের মান রয়েছে। সাধারণ ঠিকানা সন্ধানের জন্য, এই ক্ষেত্রটি সাধারণত সবচেয়ে গুরুত্বপূর্ণ।
    • location_type নির্দিষ্ট অবস্থান সম্পর্কে অতিরিক্ত ডেটা সঞ্চয় করে। নিম্নলিখিত মান বর্তমানে সমর্থিত:

      • "ROOFTOP" নির্দেশ করে যে প্রত্যাবর্তিত ফলাফলটি একটি সুনির্দিষ্ট জিওকোড যার জন্য আমাদের কাছে রাস্তার ঠিকানার নির্ভুলতা পর্যন্ত সঠিক অবস্থানের তথ্য রয়েছে৷
      • "RANGE_INTERPOLATED" ইঙ্গিত করে যে প্রত্যাবর্তিত ফলাফল দুটি সুনির্দিষ্ট বিন্দুর (যেমন ছেদ) মধ্যবর্তী একটি অনুমান (সাধারণত একটি রাস্তায়) প্রতিফলিত করে। যখন রাস্তার ঠিকানার জন্য ছাদের জিওকোডগুলি অনুপলব্ধ থাকে তখন ইন্টারপোলেটেড ফলাফলগুলি সাধারণত ফেরত দেওয়া হয়৷
      • "GEOMETRIC_CENTER" নির্দেশ করে যে প্রত্যাবর্তিত ফলাফল হল একটি ফলাফলের জ্যামিতিক কেন্দ্র যেমন একটি পলিলাইন (উদাহরণস্বরূপ, একটি রাস্তা) বা বহুভুজ (অঞ্চল)৷
      • "APPROXIMATE" নির্দেশ করে যে প্রত্যাবর্তিত ফলাফলটি আনুমানিক।
    • viewport প্রত্যাবর্তিত ফলাফল প্রদর্শনের জন্য প্রস্তাবিত ভিউপোর্ট রয়েছে, যা ভিউপোর্ট বাউন্ডিং বাক্সের southwest এবং northeast কোণকে সংজ্ঞায়িত করে দুটি অক্ষাংশ, দ্রাঘিমাংশের মান হিসাবে নির্দিষ্ট করা হয়েছে। সাধারণত ভিউপোর্ট ব্যবহারকারীর কাছে ফলাফল প্রদর্শন করার সময় ফ্রেম করতে ব্যবহৃত হয়।
    • bounds (ঐচ্ছিকভাবে ফেরত) বাউন্ডিং বক্স সংরক্ষণ করে যা সম্পূর্ণরূপে প্রত্যাবর্তিত ফলাফল ধারণ করতে পারে। মনে রাখবেন যে এই সীমাগুলি প্রস্তাবিত ভিউপোর্টের সাথে মেলে না। (উদাহরণস্বরূপ, সান ফ্রান্সিসকো ফ্যারালন দ্বীপপুঞ্জ অন্তর্ভুক্ত করে, যা প্রযুক্তিগতভাবে শহরের অংশ, কিন্তু সম্ভবত ভিউপোর্টে ফেরত দেওয়া উচিত নয়।)
  • plus_code ( ওপেন লোকেশন কোড এবং প্লাস কোড দেখুন) হল একটি এনকোড করা অবস্থানের রেফারেন্স, যা অক্ষাংশ এবং দ্রাঘিমাংশ স্থানাঙ্ক থেকে প্রাপ্ত, যা একটি এলাকাকে প্রতিনিধিত্ব করে: একটি ডিগ্রীর 1/8000 তম ডিগ্রী 1/8000 তম (বিষুব রেখায় প্রায় 14 মি x 14 মি) বা ছোট। প্লাস কোডগুলি এমন জায়গায় রাস্তার ঠিকানাগুলির প্রতিস্থাপন হিসাবে ব্যবহার করা যেতে পারে যেখানে ঠিকানাগুলি বিদ্যমান নেই (যেখানে বিল্ডিংগুলি সংখ্যাযুক্ত নয় বা রাস্তার নাম দেওয়া হয়নি)। API সর্বদা প্লাস কোড ফেরত দেয় না।

    যখন পরিষেবাটি একটি প্লাস কোড ফেরত দেয়, তখন এটি একটি গ্লোবাল কোড এবং একটি যৌগিক কোড হিসাবে ফর্ম্যাট করা হয়:

    • global_code হল একটি 4 অক্ষরের এলাকা কোড এবং 6 অক্ষর বা দীর্ঘ স্থানীয় কোড (849VCWC8+R9)।
    • compound_code হল একটি 6 অক্ষর বা দীর্ঘ স্থানীয় কোড যার একটি স্পষ্ট অবস্থান (CWC8+R9, Mountain View, CA, USA)৷ প্রোগ্রাম্যাটিকভাবে এই বিষয়বস্তু পার্স করবেন না।
    যেখানে উপলব্ধ, API গ্লোবাল কোড এবং যৌগিক কোড উভয়ই প্রদান করে। যাইহোক, যদি ফলাফলটি দূরবর্তী অবস্থানে থাকে (উদাহরণস্বরূপ, একটি মহাসাগর বা মরুভূমি) শুধুমাত্র বিশ্বব্যাপী কোড ফেরত দেওয়া যেতে পারে।
  • partial_match নির্দেশ করে যে জিওকোডার আসল অনুরোধের জন্য একটি সঠিক মিল ফেরত দেয়নি, যদিও এটি অনুরোধ করা ঠিকানার অংশের সাথে মেলে। আপনি ভুল বানান এবং/অথবা একটি অসম্পূর্ণ ঠিকানার জন্য আসল অনুরোধটি পরীক্ষা করতে চাইতে পারেন।

    আংশিক মিলগুলি প্রায়শই রাস্তার ঠিকানাগুলির জন্য ঘটে যা আপনার অনুরোধে পাস করা এলাকার মধ্যে বিদ্যমান নেই। আংশিক মিলগুলিও ফেরত দেওয়া হতে পারে যখন একটি অনুরোধ একই এলাকার দুই বা ততোধিক অবস্থানের সাথে মেলে। উদাহরণস্বরূপ, "Hillpar St, Bristol, UK" Henry Street এবং Henrietta Street উভয়ের জন্য একটি আংশিক ম্যাচ ফিরিয়ে দেবে। মনে রাখবেন যে যদি একটি অনুরোধে একটি ভুল বানান ঠিকানা উপাদান অন্তর্ভুক্ত থাকে, জিওকোডিং পরিষেবা একটি বিকল্প ঠিকানা প্রস্তাব করতে পারে। এইভাবে ট্রিগার করা প্রস্তাবনাগুলিকেও একটি আংশিক মিল হিসাবে চিহ্নিত করা হবে৷

  • place_id একটি অনন্য শনাক্তকারী যা অন্যান্য Google API-এর সাথে ব্যবহার করা যেতে পারে। উদাহরণস্বরূপ, আপনি একটি স্থানীয় ব্যবসার বিশদ যেমন ফোন নম্বর, খোলার সময়, ব্যবহারকারীর পর্যালোচনা এবং আরও অনেক কিছু পেতে একটি Places API অনুরোধে place_id ব্যবহার করতে পারেন৷ স্থান আইডি ওভারভিউ দেখুন.
জিওকোডিং প্রতিক্রিয়ার মধ্যে navigation_points ক্ষেত্রটিতে পয়েন্টগুলির একটি তালিকা রয়েছে যা স্থানটিতে নেভিগেট করার জন্য দরকারী। বিশেষ করে, রাস্তার নেটওয়ার্ক থেকে বা স্থান পর্যন্ত রাউটিং করার সময় এগুলি হয় শুরু বা শেষ বিন্দু হিসাবে ব্যবহার করা উচিত। প্রতিটি নেভিগেশন পয়েন্টে নিম্নলিখিত মান রয়েছে:
  • location নেভিগেশন পয়েন্টের অক্ষাংশ, দ্রাঘিমাংশের মান রয়েছে। এই অবস্থানটি সর্বদা রোড নেটওয়ার্কের খুব কাছাকাছি থাকবে এবং একটি জায়গায় এবং সেখান থেকে নেভিগেট করার জন্য একটি আদর্শ স্টপিং বা স্টার্টিং পয়েন্ট প্রতিনিধিত্ব করে৷ বিন্দুটি ইচ্ছাকৃতভাবে রাস্তার কেন্দ্ররেখা থেকে সামান্য অফসেট করা হয়েছে যাতে জায়গাটি অবস্থিত রাস্তার পাশে স্পষ্টভাবে চিহ্নিত করা যায়।
  • restricted_travel_modes হল ভ্রমণ মোডের একটি তালিকা যেখান থেকে নেভিগেশন পয়েন্ট অ্যাক্সেসযোগ্য নয়:
    • "DRIVE" হল ড্রাইভিং দিকনির্দেশের সাথে সম্পর্কিত ভ্রমণ মোড।
    • "WALK" হল হাঁটার দিকনির্দেশের সাথে সম্পর্কিত ভ্রমণ মোড।

ঠিকানার ধরন এবং ঠিকানা উপাদান প্রকার

ফলাফলের types[] অ্যারে ঠিকানার প্রকার নির্দেশ করে। ঠিকানার ধরনগুলির উদাহরণগুলির মধ্যে একটি রাস্তার ঠিকানা, একটি দেশ বা একটি রাজনৈতিক সত্তা অন্তর্ভুক্ত। address_components[] এ একটি types[] অ্যারে রয়েছে, যা ঠিকানার প্রতিটি অংশের ধরন নির্দেশ করে। উদাহরণগুলির মধ্যে রয়েছে রাস্তার নম্বর বা দেশ৷ (নীচে প্রকারের একটি সম্পূর্ণ তালিকা রয়েছে।) ঠিকানার একাধিক প্রকার থাকতে পারে। প্রকারগুলি 'ট্যাগ' হিসাবে বিবেচিত হতে পারে। উদাহরণস্বরূপ, অনেক শহরকে political এবং locality ধরন দিয়ে ট্যাগ করা হয়েছে।

নিম্নলিখিত প্রকারগুলি সমর্থিত এবং জিওকোডার দ্বারা ঠিকানার ধরন এবং ঠিকানা উপাদান প্রকারের অ্যারে উভয়েই ফেরত দেওয়া হয়:

  • street_address একটি সুনির্দিষ্ট রাস্তার ঠিকানা নির্দেশ করে।
  • route একটি নামযুক্ত রুট নির্দেশ করে (যেমন "US 101")।
  • intersection একটি প্রধান ছেদ নির্দেশ করে, সাধারণত দুটি প্রধান রাস্তা।
  • political একটি রাজনৈতিক সত্তা নির্দেশ করে। সাধারণত, এই ধরনের কিছু বেসামরিক প্রশাসনের বহুভুজ নির্দেশ করে।
  • country জাতীয় রাজনৈতিক সত্তাকে নির্দেশ করে এবং এটি সাধারণত জিওকোডার দ্বারা প্রত্যাবর্তিত সর্বোচ্চ অর্ডার প্রকার।
  • administrative_area_level_1 দেশের স্তরের নিচে একটি প্রথম-ক্রম নাগরিক সত্তা নির্দেশ করে। মার্কিন যুক্তরাষ্ট্রের মধ্যে, এই প্রশাসনিক স্তরগুলি হল রাজ্য। সমস্ত জাতি এই প্রশাসনিক স্তর প্রদর্শন করে না। বেশিরভাগ ক্ষেত্রে, প্রশাসনিক_ক্ষেত্র_স্তরের_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 অক্ষাংশ এবং দ্রাঘিমাংশ থেকে প্রাপ্ত একটি এনকোড করা অবস্থানের রেফারেন্স নির্দেশ করে। প্লাস কোডগুলি এমন জায়গায় রাস্তার ঠিকানাগুলির প্রতিস্থাপন হিসাবে ব্যবহার করা যেতে পারে যেখানে সেগুলি বিদ্যমান নেই (যেখানে বিল্ডিংগুলি সংখ্যাযুক্ত নয় বা রাস্তার নাম দেওয়া হয়নি)। বিস্তারিত জানার জন্য https://plus.codes দেখুন।
  • postal_code একটি পোস্টাল কোড নির্দেশ করে যেটি দেশের মধ্যে ডাক মেইলের ঠিকানা দিতে ব্যবহৃত হয়।
  • natural_feature একটি বিশিষ্ট প্রাকৃতিক বৈশিষ্ট্য নির্দেশ করে।
  • airport একটি বিমানবন্দর নির্দেশ করে।
  • park একটি নামযুক্ত পার্ক নির্দেশ করে।
  • point_of_interest একটি নামকৃত আগ্রহের পয়েন্ট নির্দেশ করে। সাধারণত, এই "POI"গুলি হল বিশিষ্ট স্থানীয় সত্ত্বা যা "এম্পায়ার স্টেট বিল্ডিং" বা "আইফেল টাওয়ার" এর মতো অন্য বিভাগে সহজে ফিট করে না।

প্রকারের একটি খালি তালিকা নির্দেশ করে যে নির্দিষ্ট ঠিকানা উপাদানের জন্য কোন পরিচিত প্রকার নেই, উদাহরণস্বরূপ, ফ্রান্সে 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 প্যারামিটার সেট করে অনুরোধ URL এর মধ্যে তা করবেন।

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 মানচিত্র অ্যাপ্লিকেশন আনুষ্ঠানিকভাবে চালু করা হয়েছে। মনে রাখবেন যে বায়াসিং শুধুমাত্র একটি নির্দিষ্ট ডোমেনের জন্য ফলাফল পছন্দ করে ; যদি আরও প্রাসঙ্গিক ফলাফল এই ডোমেনের বাইরে বিদ্যমান থাকে, তাহলে সেগুলি অন্তর্ভুক্ত করা যেতে পারে।

উদাহরণস্বরূপ, "Toledo" এর জন্য একটি জিওকোড এই ফলাফলটি প্রদান করে, কারণ জিওকোডিং 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"
}

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"
}

উপাদান ফিল্টারিং

একটি জিওকোডিং প্রতিক্রিয়াতে, জিওকোডিং এপিআই একটি নির্দিষ্ট এলাকায় সীমাবদ্ধ ঠিকানার ফলাফল ফিরিয়ে দিতে পারে। আপনি components ফিল্টার ব্যবহার করে সীমাবদ্ধতা নির্দিষ্ট করতে পারেন। একটি ফিল্টার উপাদানগুলির একটি তালিকা নিয়ে গঠিত: একটি পাইপ ( | ) দ্বারা পৃথক করা component:value জোড়া। ফিল্টার মান অন্যান্য জিওকোডিং অনুরোধের মতো বানান সংশোধন এবং আংশিক মিলের একই পদ্ধতি সমর্থন করে। যদি জিওকোডার একটি উপাদান ফিল্টারের জন্য একটি আংশিক মিল খুঁজে পায়, তবে প্রতিক্রিয়াটিতে একটি partial_match ক্ষেত্র থাকবে।

ফিল্টার করা যেতে পারে এমন components মধ্যে রয়েছে:

  • postal_code postal_code এবং postal_code_prefix সাথে মেলে।
  • country একটি দেশের নাম বা দুটি অক্ষরের ISO 3166-1 দেশের কোডের সাথে মেলে। API দেশগুলিকে সংজ্ঞায়িত করার জন্য ISO মান অনুসরণ করে এবং দেশের সংশ্লিষ্ট ISO কোড ব্যবহার করার সময় ফিল্টারিং সবচেয়ে ভাল কাজ করে।

নিম্নলিখিত components ফলাফল প্রভাবিত করতে ব্যবহার করা যেতে পারে, কিন্তু প্রয়োগ করা হবে না:

  • route একটি রুটের দীর্ঘ বা ছোট নামের সাথে মিলে যায়।
  • locality locality এবং sublocality প্রকারের সাথে মেলে।
  • administrative_area সব administrative_area স্তরের সাথে মেলে।

উপাদান ফিল্টারিং সম্পর্কে নোট:

  • অনুরোধে এই উপাদান ফিল্টারগুলি পুনরাবৃত্তি করবেন না, অথবা API ফিরিয়ে দেবে Invalid_request : country , postal_code , route
  • যদি অনুরোধে পুনরাবৃত্ত উপাদান ফিল্টার থাকে, তাহলে API সেই ফিল্টারগুলিকে AND হিসেবে মূল্যায়ন করে, OR নয়।
  • ফলাফলগুলি Google মানচিত্রের সাথে সামঞ্জস্যপূর্ণ, যা মাঝে মাঝে অপ্রত্যাশিত ZERO_RESULTS প্রতিক্রিয়া দেয়৷ প্লেস স্বয়ংসম্পূর্ণ ব্যবহার কিছু ব্যবহারের ক্ষেত্রে আরও ভাল ফলাফল প্রদান করতে পারে। আরও জানতে, এই FAQ দেখুন।
  • প্রতিটি ঠিকানা উপাদানের জন্য, হয় address প্যারামিটারে বা একটি components ফিল্টারে এটি নির্দিষ্ট করুন, কিন্তু উভয়ই নয়। উভয়ের মধ্যে একই মান উল্লেখ করলে ZERO_RESULTS হতে পারে।

"হাই সেন্ট, হেস্টিংস"-এর জন্য একটি জিওকোড 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"
}