অবস্থান ডেটা নিয়ে কাজ করুন

এই টিউটোরিয়ালে দেখানো হয়েছে কীভাবে অবস্থানের ডেটা তৈরি এবং সম্পাদনা করতে হয়। মাই বিজনেস বিজনেস ইনফরমেশন এপিআই আপনাকে নিম্নলিখিত কাজগুলো করার ক্ষমতা প্রদান করে:

বিজ্ঞাপনে অবস্থান ব্যবহার করা যেতে পারে, কিন্তু সার্চ এবং ম্যাপে প্রদর্শিত হওয়ার জন্য সেগুলোকে যাচাই করা প্রয়োজন। অবস্থানের ডেটা accounts.locations কালেকশনের মাধ্যমে উপস্থাপিত হয়।

শুরু করার আগে

My Business Business Information API ব্যবহার করার আগে, আপনাকে আপনার অ্যাপ্লিকেশনটি রেজিস্টার করতে হবে এবং OAuth 2.0 ক্রেডেনশিয়াল সংগ্রহ করতে হবে। My Business Business Information API দিয়ে কীভাবে শুরু করবেন সে সম্পর্কে বিস্তারিত জানতে, বেসিক সেটআপ দেখুন।

একটি অবস্থান তৈরি করুন

আপনি My Business Business Information API ব্যবহার করে accounts.locations.create- এর মাধ্যমে একটি ব্যবসার জন্য নতুন অবস্থান তৈরি করতে পারেন।

একটি অবস্থান তৈরি করতে, নিম্নলিখিতগুলি ব্যবহার করুন:

HTTP
POST
https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?requestId=requestId&validateOnly=True|False

{
    "storeCode": "GOOG-SYD",
    "languageCode": "en-AU",
    "title": "Google Sydney",
    "phoneNumbers": {
      "primaryPhone": "02 9374 4000"
     },
    "storefrontAddress": {
      "addressLines": [
        "Level 5",
        "48 Pirrama Road"
      ],
      "locality": "Pyrmont",
      "postalCode": "2009",
      "administrativeArea": "NSW",
      "regionCode": "AU"
    },
    "websiteUri": "https://www.google.com.au/",
    "regularHours": {
      "periods": [
        {
          "openDay": "MONDAY",
          "closeDay": "MONDAY",
          "openTime": "09:00",
          "closeTime": "17:00"
        },
        {
          "openDay": "TUESDAY",
          "closeDay": "TUESDAY",
          "openTime": "09:00",
          "closeTime": "17:00"
        },
        {
          "openDay": "WEDNESDAY",
          "closeDay": "WEDNESDAY",
          "openTime": "09:00",
          "closeTime": "17:00"
        },
        {
          "openDay": "THURSDAY",
          "closeDay": "THURSDAY",
          "openTime": "09:00",
          "closeTime": "17:00"
        },
        {
          "openDay": "FRIDAY",
          "closeDay": "FRIDAY",
          "openTime": "09:00",
          "closeTime": "17:00"
        }
      ]
    },
    "categories": {
      "primaryCategory": {
        "name": "gcid:software_company"
      }
     }
}

একটি অবস্থান মুছে ফেলুন

আপনি My Business Business Information API ব্যবহার করে locations.delete এর মাধ্যমে একটি লোকেশন ডিলিট করতে পারেন।

কোনো অবস্থান মুছে ফেলার জন্য, নিম্নলিখিতটি ব্যবহার করুন:

HTTP
DELETE
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}

নাম দিয়ে অবস্থান খুঁজুন

আপনার অ্যাকাউন্টের সাথে যদি একাধিক ব্যবসা যুক্ত থাকে, তবে আপনি একটি নির্দিষ্ট ঠিকানা পেতে চাইতে পারেন। locations.get ব্যবহার করে আপনি ব্যবসার নাম দিয়ে ফিল্টার করে একটি নির্দিষ্ট ঠিকানা খুঁজে নিতে পারেন।

নাম দ্বারা অবস্থান পেতে, নিম্নলিখিতটি ব্যবহার করুন। নির্দিষ্ট ফিল্ডগুলি পুনরুদ্ধার করতে আপনাকে অবশ্যই একটি readMask নির্দিষ্ট করতে হবে।

HTTP
GET
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}?readMask={commaSeparatedFieldsToRetrieve}

গুগল ম্যাপস সংস্করণটি ফেরত দিন

HTTP

কোনো অবস্থানের গুগল ম্যাপস সংস্করণ পেতে, অনুরোধ URL-এর শেষে googleUpdated যুক্ত করুন, যেমনটি নিচের উদাহরণে দেখানো হয়েছে:

GET
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}:googleUpdated?readMask={commaSeparatedFieldsToRetrieve}

যদি কোনো ফলাফল না পাওয়া যায়, তাহলে একটি 404 NOT FOUND HTTP স্ট্যাটাস কোড ফেরত দেওয়া হয়। গুগল আপডেট পরিচালনা সম্পর্কে আরও বিস্তারিত জানতে, ‘আপডেট গ্রহণ বা প্রত্যাখ্যান করুন’ দেখুন।

অবস্থানগুলির তালিকা

যখন আপনি এক বা একাধিক অবস্থান পরিচালনা করেন, তখন আপনি আপনার অ্যাকাউন্টের সাথে যুক্ত সমস্ত অবস্থানের তালিকা দেখতে চাইতে পারেন। একজন ব্যবহারকারীর সাথে যুক্ত সমস্ত অবস্থানের তালিকা দেখতে accounts.locations.list API ব্যবহার করুন।

কোনো প্রমাণীকৃত ব্যবহারকারীর সরাসরি মালিকানাধীন বা পরিচালিত সমস্ত অবস্থানের তালিকা পেতে, নিম্নলিখিতটি ব্যবহার করুন:

HTTP
GET
https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}

পরোক্ষভাবে মালিকানাধীন তালিকাগুলি (যেগুলি কোনো গ্রুপের মাধ্যমে মালিকানাধীন বা পরিচালিত) অন্তর্ভুক্ত করতে, অনুরোধ URL-এ অ্যাকাউন্টের জন্য একটি '-' ওয়াইল্ডকার্ড ব্যবহার করুন:

HTTP
GET
https://mybusinessbusinessinformation.googleapis.com/v1/accounts/-/locations?readMask={commaSeparatedFieldsToRetrieve}

অবস্থান তালিকাভুক্ত করার সময় ফলাফল ফিল্টার করুন

HTTP

আপনি accounts.locations.list কল করার সময় ফেরত আসা ফলাফল সীমিত করতে ফিল্টার ব্যবহার করতে পারেন। একটি অনুরোধ ফিল্টার করতে, এই উদাহরণে দেখানো অনুযায়ী বেস URL-এর সাথে একটি ফিল্টার এক্সপ্রেশন যুক্ত করুন:

GET
https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter={FIELD_NAME}=%22{YOUR_QUERY}%22

মৌলিক কোয়েরি সিনট্যাক্স

একটি বিধিনিষেধের সিনট্যাক্সটি হলো: <field><operator><value> , যেখানে অপারেটরটি হলো EQUALS (=) অথবা HAS (:)। locationName ছাড়া বাকি সব ফিল্ডের জন্য EQUALS (=) এবং HAS (:) অপারেটর দুটি সমতুল্য (নিচের সারণি দেখুন)।

উদ্ধৃতি চিহ্ন "%22" হিসেবে এবং স্পেস প্লাস চিহ্ন ( + ) হিসেবে এনকোড করা হয়।

অন্যথা উল্লেখ না থাকলে, সকল তুলনা কেস-ইনসেনসিটিভ টোকেন তুলনা। উদাহরণস্বরূপ, "4 drive" এর সাথে "4, Privet Drive" মিলবে।

ফিল্টার কোয়েরিতে একাধিক ফিল্ড একত্রিত করুন

এপিআই-টি সমস্ত ফিল্ডের সীমাবদ্ধতা সংযুক্ত করতে AND ব্যবহারের অনুমতি দেয়। তবে, OR কীওয়ার্ডের ক্ষেত্রে, সমস্ত সীমাবদ্ধতা একই ফিল্ডের উপর প্রযোজ্য হতে হবে। উদাহরণস্বরূপ: locationName=A OR labels=B অনুমোদিত নয়।

উদাহরণ

নিম্নলিখিত উদাহরণটি একটি ফিল্টার এক্সপ্রেশন দেখায় যা "Pepé Le Pew" নামের সমস্ত অবস্থান ফেরত দেয়। এটি "french_restaurant" বা "european_restaurant" এর জন্য বিভাগ এবং "newly open" এর একটি লেবেল দেখায়।

locationName=%22Pepé+Le+Pew%22+AND+
(categories=%22french_restaurant%22+OR+
categories=%22european_restaurant%22)+AND+
labels=%22newly+open%22

দূরত্ব বা অ্যাকাউন্ট অনুযায়ী অনুসন্ধান করুন

নিম্নলিখিত উদাহরণটি দেখায় যে কীভাবে আপনি একটি ভৌগোলিক বিন্দু থেকে একটি নির্দিষ্ট দূরত্বের মধ্যে অবস্থানগুলি অনুসন্ধান করতে পারেন:

HTTP
GET
https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=distance(latlng, geopoint({latitude}, {longitude}))<{distance}

মার্কিন যুক্তরাষ্ট্রের কলোরাডোর বোল্ডার থেকে ১০০০ মাইলের মধ্যে অবস্থিত স্থানসমূহ ফিল্টার করতে:

GET
https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&filter=distance(latlng, geopoint(40.01, -105.27))<1000.0

সমস্ত সমর্থিত ফিল্টার ফিল্ডের তালিকা

নিম্নলিখিতটি হলো ফিল্টারিংয়ের জন্য ব্যবহারযোগ্য সমস্ত ফিল্ডের একটি সম্পূর্ণ তালিকা:

ক্ষেত্র বর্ণনা এবং উদাহরণ
স্ট্রিং ম্যাচিং ফিল্ড
title

ব্যবসাটির আসল নাম

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/ {accountId} /locations?readMask= {commaSeparatedFieldsToRetrieve} &filter=title:"Bajis" (যে কোনো স্থানের নামের সাথে মেলে যেখানে "Bajis" একটি সাবস্ট্রিং হিসাবে রয়েছে)

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/ {accountId} /locations?readMask= {commaSeparatedFieldsToRetrieve} &filter=title="Bajis" (যে কোনো স্থানের নামের সাথে মেলে যেখানে টোকেন/শব্দ হিসেবে "Bajis" আছে)

categories

প্রাথমিক ক্যাটাগরি এবং অতিরিক্ত ক্যাটাগরিগুলোর সমন্বয়। মনে রাখবেন যে "gcid:" বাদ দিতে হবে। যদি একাধিক ক্যাটাগরি থাকে, তবে অন্তত একটি ক্যাটাগরি এই প্যাটার্নের সাথে মিললে এই ফিল্টারটি কাজ করবে।

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/ {accountId} /locations?readMask= {commaSeparatedFieldsToRetrieve} &filter=categories="french_restaurant"

phone_numbers.primary_phone

প্রাথমিক ফোন নম্বরটি E.164 ফরম্যাটে (উদাহরণস্বরূপ: "+441234567890")।

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/ {accountId} /locations?readMask= {commaSeparatedFieldsToRetrieve} &filter=phone_numbers.primary_phone="+441234567890"

storefront_address.region_code

ঠিকানার দেশ/অঞ্চলের CLDR অঞ্চল কোড

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/ {accountId} /locations?readMask= {commaSeparatedFieldsToRetrieve} &filter=storefront_address.region_code="US"

storefront_address.administrative_area

কোনো দেশ বা অঞ্চলের ডাক ঠিকানার জন্য ব্যবহৃত সর্বোচ্চ প্রশাসনিক উপবিভাগ।

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/ {accountId} /locations?readMask= {commaSeparatedFieldsToRetrieve} &filter=storefront_address.administrative_area="CA"

storefront_address.locality

ঠিকানার শহর/নগর অংশ

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/ {accountId} /locations?readMask= {commaSeparatedFieldsToRetrieve} &filter=storefront_address.locality="New York"

storefront_address.postal_code

ঠিকানার পোস্টাল কোড

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/ {accountId} /locations?readMask= {commaSeparatedFieldsToRetrieve} &filter=storefront_address.postal_code="12345"

metadata.place_id

যদি এই অবস্থানটি যাচাই করা হয়ে থাকে এবং গুগল ম্যাপসের সাথে সংযুক্ত থাকে বা সেখানে প্রদর্শিত হয়, তাহলে এই ক্ষেত্রটি অবস্থানটির প্লেস আইডি-র সমান হবে।

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/ {accountId} /locations?readMask= {commaSeparatedFieldsToRetrieve} &filter=metadata.place_id="12345"

openInfo.status

স্থানটি বর্তমানে ব্যবসার জন্য খোলা আছে কি না তা নির্দেশ করে ( OPEN , CLOSED_PERMANENTLY )

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/ {accountId} /locations?readMask= {commaSeparatedFieldsToRetrieve} &filter=openInfo.status="OPEN"

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/ {accountId} /locations?readMask= {commaSeparatedFieldsToRetrieve} &filter=openInfo.status="CLOSED_PERMANENTLY"

labels

আপনার ব্যবসাকে ট্যাগ করার জন্য কিছু মুক্ত-ফর্মের স্ট্রিং-এর সংগ্রহ। অন্য সব ফিল্ডের বিপরীতে, এই মানটিকে অবশ্যই কেসিং সহ একটি সম্পূর্ণ লেবেলের সাথে হুবহু মিলতে হবে, শুধুমাত্র একটি টোকেন নয়। যেমন, যদি লেবেলটি "XX YY" হয়, তাহলে "XX" বা "xx yy" কোনোটিই মিলবে না।

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/ {accountId} /locations?readMask= {commaSeparatedFieldsToRetrieve} &filter=labels="newly open"

storeCode

এই অবস্থানের জন্য বাহ্যিক শনাক্তকারী, যা একটি নির্দিষ্ট অ্যাকাউন্টের মধ্যে অবশ্যই অনন্য হতে হবে।

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/ {accountId} /locations?readMask= {commaSeparatedFieldsToRetrieve} &filter=storeCode="12345"

কার্যাবলী
distance

এটি আপনাকে কোনো ভৌগোলিক বিন্দু থেকে অবস্থানের দূরত্বের ভিত্তিতে ফিল্টার করার সুযোগ দেয়।

https://mybusinessbusinessinformation.googleapis.com/v1/accounts/ {accountId} /locations?readMask= {commaSeparatedFieldsToRetrieve} &filter=distance(latlng, geopoint(1.0, -25.0))<1000.0

কোয়েরি ফিল্ড অনুসারে সাজান

আপনি ব্যবসার নাম বা স্টোর কোড অনুসারে ফলাফলগুলিকে আরোহী বা অবরোহী ক্রমে সাজাতে পারেন। orderBy স্ট্রিং-এ একাধিক সাজানোর শর্ত কমা দিয়ে আলাদা করা হয়, যেমনটি নিম্নলিখিত উদাহরণে দেখানো হয়েছে:

HTTP
GET
https://mybusinessbusinessinformation.googleapis.com/v1/accounts/{accountId}/locations?readMask={commaSeparatedFieldsToRetrieve}&orderBy=locationName,storeCode

একটি অবস্থান চিহ্নিত করুন

My Business Business Information API-এর locations.patch ব্যবহার করে কোনো একটি লোকেশনের এক বা একাধিক ফিল্ড আপডেট করুন।

কোনো অবস্থানের এক বা একাধিক ফিল্ড পরিবর্তন করতে, নিম্নলিখিতটি ব্যবহার করুন:

HTTP

লোকেশন ফিল্ডের সাথে ফিল্ডগুলো এবং আপডেট করা মানগুলো যোগ করুন, এবং fieldMask এর মান হিসেবে আপডেট করা ফিল্ডগুলোর একটি কমা-দ্বারা-বিভক্ত তালিকা ব্যবহার করুন।

PATCH
https://mybusinessbusinessinformation.googleapis.com/v1/locations/{locationId}?languageCode=language&validateOnly=True|False&updateMask=title
{
    "title": "Google Shoes"
}