בבדיקות שלי בזמנו עם ה-Indexing API, גוגלבוט הגיע בתוך חצי דקה עד כמה דקות בודדות משליחת העדכון. זה היה מהיר, אבל לא הייתי מתחייב על הזמן הזה היום.
מה זה Indexing API
ה-Indexing API מאפשר לנו לעדכן את גוגל אוטומטית כשעמוד באתר נוסף, מתעדכן או נמחק, כדי שגוגל תוכל לתזמן סריקה שלו מוקדם יותר. השליחה לא מבטיחה מתי גוגלבוט יגיע, וגם סריקה לא מבטיחה אינדוקס.
אם זה מזכיר לכם את IndexNow של בינג, הרעיון דומה: האתר מודיע למנוע החיפוש על עמודים שנוספו, השתנו או נמחקו. ה-Indexing API של גוגל הושק ביוני 2018, יותר משלוש שנים לפני IndexNow, שהושק באוקטובר 2021.
התמיכה הרשמית ב-API מוגבלת לעמודי משרות עם JobPosting ולשידורים חיים עם BroadcastEvent בתוך VideoObject. Google: המדריך של Google לשימוש ב־Indexing API
מהניסיון שלי, שווה לנסות. היו לי הצלחות עם ה-API בעבר גם מעבר לסוגי התוכן האלה, אבל דברים משתנים כל הזמן, ומה שעבד אז לא בהכרח יעבוד היום. הייתי מתחיל בניסוי קטן ובודק מה קורה בפועל בסרץ’ קונסול.
איך זה עובד?
התהליך עצמו לא מורכב:
- עמוד נוסף באתר, מתעדכן או נמחק.
- האתר שולח ל-API את הכתובת ואת סוג העדכון:
URL_UPDATEDאוURL_DELETED. - תשובת
HTTP 200מאשרת שהבקשה הצליחה. אחרי הודעת עדכון, גוגל עשויה לשלוח את גוגלבוט לסרוק את הכתובת בקרוב.
איך לקבל גישה ל-Indexing API
כדי להתחיל, צריך פרויקט ב-Google Cloud וחשבון שירות שדרכו האתר יפנה ל-API. חשבון השירות צריך הרשאת בעלים בנכס בסרץ’ קונסול. אין צורך לתת לו גם תפקיד Owner בפרויקט של Cloud. אלה שני מקומות שונים עם הרשאות שונות. Google: הדרישות המקדימות של Google ל־Indexing API
אחרי ההגדרה צריך גם לבקש אישור ומכסה. המכסה הראשונית של 200 בקשות ביום נועדה לחיבור ולבדיקות, כך שגם אתר שלא צריך יותר מ-200 בקשות ביום עדיין צריך לעבור את שלב האישור. Google: התיעוד של Google על בקשת אישור ומכסה
-
ליצור פרויקט או לבחור פרויקט קיים דרך כלי ההגדרה של Indexing API, ולהפעיל בו את ה-API.
-
לפתוח את Service Accounts בפרויקט וליצור חשבון שירות.
-
לתת לחשבון השירות שם ותיאור. במסך הרשאות הפרויקט אפשר לדלג על השלב האופציונלי. לא צריך לבחור Owner כדי להשתמש ב-Indexing API.
-
לשמור את כתובת האימייל של חשבון השירות. נצטרך אותה עוד רגע בסרץ’ קונסול. היא מופיעה גם בשדה
client_emailבקובץ ה-JSON. -
ליצור מפתח JSON לחשבון השירות ולהוריד אותו. הקובץ מכיל מפתח פרטי שנותן גישה בשם החשבון, אז הוא צריך להישאר במקום מוגן, מחוץ לתיקיות הציבוריות של האתר.
-
להוסיף את האימייל של חשבון השירות כבעלים מואצל (delegated owner) בנכס המאומת בסרץ’ קונסול. אם אותו חשבון ישמש כמה אתרים, צריך להוסיף אותו בנכס של כל אחד מהם.
שליחת בקשות ל-Indexing API: דוגמאות קוד
אחרי הגדרת חשבון השירות וההרשאות, אפשר לחבר את השליחה למערכת הניהול של האתר. המערכת צריכה לזהות מתי עמוד נוצר, מתעדכן או נמחק, ולשלוח לגוגל את ההודעה המתאימה.
הבקשה נשלחת ב-POST לכתובת https://indexing.googleapis.com/v3/urlNotifications:publish. בגוף ה-JSON נכללים ה-URL וסוג הבקשה (url ו-type), עם הכותרת Content-Type: application/json. לפני השליחה צריך להזדהות: פרטי חשבון השירות משמשים לקבלת טוקן OAuth עם הרשאת https://www.googleapis.com/auth/indexing, ואת הטוקן מצרפים לבקשה.
אם בשלב הזה העיניים שלכם מתחילות להזדגג, אני מבין לחלוטין. אפשר להעביר את החיבור למי שאחראי על הפיתוח. בוורדפרס יש גם תוספים שמבצעים את השליחה, וריכזתי כמה מהם בהמשך.
גוגל מספקת ספריות לקוח שעוזרות עם ההזדהות ושליחת הבקשות, בין היתר ב-Node.js, Python, Java ו-PHP. לא צריך לכתוב את כל החיבור מאפס. Google: ספריות הלקוח של Google ל־Indexing API
אלה דוגמאות לבקשות HTTP לפי מדריך השימוש הרשמי. לפני השליחה, צריך להחליף את YOUR_ACCESS_TOKEN בטוקן OAuth של חשבון השירות עם ההרשאה https://www.googleapis.com/auth/indexing, ואת כתובות הדוגמה בכתובות מהאתר. את הטוקן אפשר לקבל דרך ספריית הלקוח של גוגל. התשובות בהמשך הן דוגמאות להמחשת המבנה, עם כתובות וזמנים לדוגמה. Google: הדרישות המקדימות של Google ל־Indexing API
איך להודיע על עמוד חדש או עדכון לעמוד
הפעולה זהה בשני המקרים: לשלוח URL_UPDATED עם כתובת העמוד.
POST /v3/urlNotifications:publish HTTP/1.1
Host: indexing.googleapis.com
Authorization: Bearer YOUR_ACCESS_TOKEN
Content-Type: application/json
{
"url": "https://example.com/jobs/42",
"type": "URL_UPDATED"
}בתשובה מוצלחת מתקבל HTTP 200. גוף התשובה של publish כולל urlNotificationMetadata, ובתוכו פרטי ההודעה האחרונה. notifyTime הוא זמן קבלת ההודעה בגוגל. Google: המתודה urlNotifications.publish
HTTP/1.1 200 OK
Content-Type: application/json
{
"urlNotificationMetadata": {
"url": "https://example.com/jobs/42",
"latestUpdate": {
"url": "https://example.com/jobs/42",
"type": "URL_UPDATED",
"notifyTime": "2026-09-22T08:00:00Z"
}
}
}איך לבקש הסרה של עמוד מהאינדקס
לפני השליחה, העמוד צריך להחזיר 404 או 410, או לכלול noindex. הבקשה עצמה נשלחת לאותה כתובת, עם URL_DELETED.
POST /v3/urlNotifications:publish HTTP/1.1
Host: indexing.googleapis.com
Authorization: Bearer YOUR_ACCESS_TOKEN
Content-Type: application/json
{
"url": "https://example.com/jobs/43",
"type": "URL_DELETED"
}גם הודעת הסרה שהתקבלה בהצלחה מחזירה HTTP 200. בדוגמה הזאת פרטי ההסרה מופיעים תחת latestRemove:
HTTP/1.1 200 OK
Content-Type: application/json
{
"urlNotificationMetadata": {
"url": "https://example.com/jobs/43",
"latestRemove": {
"url": "https://example.com/jobs/43",
"type": "URL_DELETED",
"notifyTime": "2026-09-22T08:05:00Z"
}
}
}איך לבדוק מתי גוגל קיבלה את ההודעה
בקשת GET מחזירה פרטים על ההודעות האחרונות שנשלחו עבור הכתובת. צריך לקודד את ה-URL בפרמטר url, כפי שמופיע בדוגמה. התשובה לא מציגה את מצב האינדוקס של העמוד.
GET /v3/urlNotifications/metadata?url=https%3A%2F%2Fexample.com%2Fjobs%2F42 HTTP/1.1
Host: indexing.googleapis.com
Authorization: Bearer YOUR_ACCESS_TOKENהתשובה של getMetadata מחזירה את פרטי ההודעות ישירות, בלי העטיפה urlNotificationMetadata. בדוגמה הזאת התקבלה רק הודעת עדכון: Google: המתודה urlNotifications.getMetadata
HTTP/1.1 200 OK
Content-Type: application/json
{
"url": "https://example.com/jobs/42",
"latestUpdate": {
"url": "https://example.com/jobs/42",
"type": "URL_UPDATED",
"notifyTime": "2026-09-22T08:00:00Z"
}
}איך לשלוח כמה עדכונים בבקשת batch
אפשר לצרף עד 100 בקשות לשליחה אחת. כאן יש שתי בקשות נפרדות: עדכון על משרה אחת והסרה של משרה אחרת. כל אחת נספרת במכסה, וצריך לבדוק את התשובה לכל אחת בנפרד.
POST /batch HTTP/1.1
Host: indexing.googleapis.com
Authorization: Bearer YOUR_ACCESS_TOKEN
Content-Type: multipart/mixed; boundary=batch_indexing
--batch_indexing
Content-Type: application/http
Content-ID: <update-job-42>
POST /v3/urlNotifications:publish HTTP/1.1
Content-Type: application/json
{"url":"https://example.com/jobs/42","type":"URL_UPDATED"}
--batch_indexing
Content-Type: application/http
Content-ID: <delete-job-43>
POST /v3/urlNotifications:publish HTTP/1.1
Content-Type: application/json
{"url":"https://example.com/jobs/43","type":"URL_DELETED"}
--batch_indexing--תשובת batch חוזרת כ-multipart/mixed, עם תשובה נפרדת לכל בקשה. בדוגמה הזאת העדכון הצליח וההסרה נכשלה. Content-ID מחבר כל תשובה לבקשה שלה:
HTTP/1.1 200 OK
Content-Type: multipart/mixed; boundary=batch_response
--batch_response
Content-Type: application/http
Content-ID: <response-update-job-42>
HTTP/1.1 200 OK
Content-Type: application/json
{
"urlNotificationMetadata": {
"url": "https://example.com/jobs/42",
"latestUpdate": {
"url": "https://example.com/jobs/42",
"type": "URL_UPDATED",
"notifyTime": "2026-09-22T08:00:00Z"
}
}
}
--batch_response
Content-Type: application/http
Content-ID: <response-delete-job-43>
HTTP/1.1 403 Forbidden
Content-Type: application/json
{
"error": {
"code": 403,
"message": "Permission denied. Failed to verify the URL ownership."
}
}
--batch_response--ה-200 החיצוני לא מספיק כדי לדעת שכל הבקשות הצליחו. כאן בקשת ההסרה חזרה עם 403 כי גוגל לא הצליחה לאמת בעלות על הכתובת. במקרה כזה צריך לבדוק שלחשבון השירות יש הרשאת בעלים בנכס המתאים בסרץ’ קונסול. Google: רשימת השגיאות של Indexing API
הדוגמאות מציגות את מבנה הבקשות. ספריית HTTP מטפלת בפרטים כמו אורך גוף הבקשה וסיומות השורות, וספריות הלקוח של גוגל יכולות להרכיב גם את בקשת ה-batch.
תוספי וורדפרס לחיבור ל-Indexing API
בוורדפרס אפשר לשלוח את העדכונים דרך תוסף. אלה ארבע אפשרויות עם חיבור ל-Google Indexing API, מסודרות לפי מספר ההתקנות הפעילות במאגר וורדפרס ב-22 בספטמבר 2026. ההתקנות והדירוגים מתייחסים לתוסף כולו, ולא רק ליכולת השליחה לגוגל.
| תוסף | התקנות פעילות | דירוג ומספר דירוגים | מה הוא כולל |
|---|---|---|---|
| SiteSEO | 500,000+ | 4.0 מתוך 5, על בסיס 9 דירוגים | תוסף SEO עם Google Indexing API ו-IndexNow בגרסה החינמית |
| SEOPress | 300,000+ | 4.8 מתוך 5, על בסיס 1,257 דירוגים | תוסף SEO עם Google Indexing API ו-IndexNow בגרסה החינמית |
| Instant Indexing for Google של Rank Math | 200,000+ | 3.6 מתוך 5, על בסיס 36 דירוגים | תוסף נפרד לשליחה לגוגל, שאפשר להשתמש בו גם בלי Rank Math SEO |
| CrawlWP | 30,000+ | 4.7 מתוך 5, על בסיס 60 דירוגים | תוסף SEO עם שליחה ל-Google Indexing API, תמיכה ב-IndexNow ולוג בקשות |
ל-SEOPress יש כאן גם דירוג גבוה וגם הרבה יותר ביקורות. ל-SiteSEO יש יותר התקנות, אבל רק תשעה דירוגים. אצל Instant Indexing של Rank Math מופיעה במאגר גם אזהרה שהוא לא נבדק מול שלוש הגרסאות הראשיות האחרונות של וורדפרס. אם תוסף ה-SEO שכבר מותקן באתר כולל חיבור ל-API, שווה לבדוק אותו לפני הוספת תוסף נוסף.
איך לבדוק את ההשפעה על הסריקה והאינדוקס
כדאי לשמור לוג של הבקשות: איזה URL נשלח, מתי, מה היה סוג העדכון ואיזו תשובה חזרה. אחר כך אפשר להשוות בין זמן השליחה לבין הביקור של גוגלבוט בלוגים, ולבדוק את מצב האינדוקס דרך URL Inspection בסרץ’ קונסול.
הייתי מתחיל בקבוצה קטנה של עמודים ומשווה לעמודים דומים שלא נשלחו דרך ה-API. כדאי לבדוק אם יש הבדל בזמן עד הסריקה ובאינדוקס, לאורך כמה עדכונים. כך אפשר להחליט אם שווה להמשיך עם החיבור באתר הזה.
בהצלחה.










