Google Indexing API Tutorial: Index Your Blog Posts Instantly
একটি নতুন ব্লগ বা ওয়েবসাইট খোলার পর সবচেয়ে বড় যে সমস্যার মুখোমুখি হতে হয়, তা হলো পোস্ট ইনডেক্সিং। অনেক সময় কন্টেন্ট পাবলিশ করার পর ১ থেকে ২ সপ্তাহ পার হয়ে গেলেও গুগল সার্চ কনসোলে "Discovered - currently not indexed" বা "Crawled - currently not indexed" এরর দেখিয়ে পোস্টটি সার্চ রেজাল্টে দেখায় না।
গুগল বট সাধারণ নিয়মে আপনার সাইটম্যাপ ক্রল করার জন্য নির্দিষ্ট সময় পর পর আসে। কিন্তু আমরা যদি গুগলের অফিশিয়াল Google Indexing API ব্যবহার করি, তবে নতুন কোনো কন্টেন্ট পাবলিশ করার সাথে সাথেই গুগল বটকে সরাসরি সিগন্যাল পাঠানো যায়। এর ফলে মাত্র কয়েক মিনিট বা কয়েক ঘণ্টার ভেতর কন্টেন্ট গুগলে লাইভ হয়ে যায়। আজকের গাইডে আমরা এর কমপ্লিট সেটআপ এবং কাস্টম কোড ট্রিক দেখবো।
ধাপ ১: Google Cloud Console-এ প্রজেক্ট ও সার্ভিস অ্যাকাউন্ট তৈরি
ইনডেক্সিং এপিআই ব্যবহারের জন্য প্রথমে গুগলের ক্লাউড প্ল্যাটফর্মে একটি ফ্রি প্রজেক্ট তৈরি করে এপিআই কি (Credential Key) জেনারেট করতে হবে:
- Google Cloud Console-এ যান এবং আপনার জিমেইল দিয়ে লগইন করুন।
- একটি নতুন প্রজেক্ট তৈরি করুন (যেমন:
Ahyan-Indexing-Bot)। - API Library-তে গিয়ে "Web Search Indexing API" লিখে সার্চ করুন এবং এটি Enable করুন।
- এরপর IAM & Admin ➔ Service Accounts-এ গিয়ে একটি সার্ভিস অ্যাকাউন্ট তৈরি করুন এবং রোল হিসেবে
OwnerবাEditorসিলেক্ট করুন। - সার্ভিস অ্যাকাউন্ট তৈরি হলে সেটির অ্যাকশন মেনু থেকে Keys ➔ Add Key ➔ Create New Key (JSON) অপশনে ক্লিক করুন। একটি ফাইল ডাউনলোড হবে, এটি আপনার সিক্রেট এপিআই কি। ফাইলটির নাম পরিবর্তন করে রাখুন
service-account.json।
ধাপ ২: Google Search Console-এ সার্ভিস অ্যাকাউন্ট যুক্ত করা
ডাউনলোড করা JSON ফাইলের ভেতরে একটি ক্লায়েন্ট ইমেইল (client_email) দেখতে পাবেন (যেমন: your-bot@project.iam.gserviceaccount.com)। এই ইমেইলটিকে আপনার সার্চ কনসোলের মালিকানা দিতে হবে:
- আপনার Google Search Console ড্যাশবোর্ডে প্রবেশ করুন।
- বাম পাশের মেনু থেকে Settings ➔ Users and permissions-এ যান।
- Add User বাটনে ক্লিক করে সার্ভিস অ্যাকাউন্টের ইমেইলটি পেস্ট করুন এবং পারমিশন হিসেবে অবশ্যই Owner সিলেক্ট করে সেভ করুন।
ধাপ ৩: ইনস্ট্যান্ট ইনডেক্সিং স্ক্রিপ্ট তৈরি (Node.js মেথড)
সব কনফিগারেশন রেডি হলে এবার আমরা আমাদের কাস্টম ব্যাকএন্ড স্ক্রিপ্টটি তৈরি করবো। আপনি যদি টারমাক্স বা যেকোনো কোড এডিটরে থাকেন, তবে আপনার প্রোজেক্ট ফোল্ডারে নিচের লাইব্রেরিটি ইনস্টল করে নিন:
npm install googleapis axios
এবার একই ফোল্ডারে আপনার service-account.json ফাইলটি রাখুন এবং index-now.js নামে একটি ফাইল তৈরি করে নিচের জাভাস্ক্রিপ্ট কোডটি পেস্ট করুন:
const { google } = require('googleapis');
const fs = require('fs');
// ১. সার্ভিস অ্যাকাউন্ট কী ফাইল লোড করা
const key = JSON.parse(fs.readFileSync('service-account.json'));
// ২. গুগলের ও-অথ ক্লায়েন্ট স্কোপ সেটআপ
const jwtClient = new google.auth.JWT(
key.client_email,
null,
key.private_key,
['https://www.googleapis.com/auth/indexing'],
null
);
async function requestInstantIndexing(targetUrl) {
try {
// টোকেন অথেন্টিকেশন
await jwtClient.authorize();
// গুগল ইনডেক্সিং এন্ডপয়েন্ট কনফিগারেশন
const options = {
url: 'https://indexing.googleapis.com/v3/urlNotifications:publish',
method: 'POST',
auth: { bearer: jwtClient.credentials.access_token },
json: {
url: targetUrl,
type: 'URL_UPDATED' // নতুন পোস্টের জন্য URL_UPDATED এবং ডিলিট করলে URL_DELETED
}
};
const response = await google.indexing('v3').urlNotifications.publish({
auth: jwtClient,
requestBody: {
url: targetUrl,
type: 'URL_UPDATED'
}
});
console.log(`🚀 Success! Signal sent for: ${targetUrl}`);
console.log(`Response State:`, response.data.urlNotificationMetadata);
} catch (error) {
console.error('❌ Indexing Request Failed:', error.response ? error.response.data : error.message);
}
}
// আপনার নতুন পোস্টের লিঙ্কটি এখানে দিন
const myNewPostUrl = 'https://blog.ahyancreations.top/tutorials/termux-python-ai.html';
requestInstantIndexing(myNewPostUrl);
ধাপ ৪: স্ক্রিপ্ট রান ও ভেরিফিকেশন
টার্মিনালে নিচের কমান্ডটি দিয়ে স্ক্রিপ্টটি এক্সিকিউট করুন:
node index-now.js
কমান্ডটি রান করার সাথে সাথেই যদি আউটপুটে Success! Signal sent এবং রেসপন্স মেটাডেটা দেখতে পান, তবে বুঝবেন আপনার রিকোয়েস্ট গুগলের মেইন ইনডেক্সিং কিউতে (Queue) চলে গেছে। সাধারণত এর ১ থেকে ১০ মিনিটের মধ্যে গুগল বট আপনার সাইটের ওই পেজটি ক্রল করে সার্চ রেজাল্টে যুক্ত করে নেয়।
কোটা এবং সতর্কতা: গুগল এই অফিশিয়াল এপিআই-এর মাধ্যমে প্রতিদিন ফ্রিতে ২০০টি ইউআরএল সাবমিট করার অনুমতি দেয় (যা একটি রেগুলার ব্লগ বা নিউজ সাইটের জন্য বিশাল)। যদিও গুগল এই এপিআই-টি মূলত JobPosting এবং BroadcastVideo স্কিমার জন্য রিকমেন্ড করে, তবে এটি সাধারণ ব্লগ পোস্টের ক্ষেত্রেও সমানভাবে কাজ করে এবং বিশ্বের বড় বড় ওয়েবমাস্টাররা কাস্টম ইনডেক্সিং স্পিড বুস্ট করতে এই মেথডটিই ব্যবহার করেন।