این سند دستورالعمل هایی را برای بهترین شیوه ها ارائه می دهد. برای اطلاعات بیشتر به نکات عملکرد مراجعه کنید.
زمان استفاده از API
برای ارسال درخواست ها به صورت برنامه ای
چه ترجیح میدهید هر قسمت از گردش کار خود را خودکار کنید، یا یک قلاب به سیستم ERP (برنامهریزی منابع سازمانی) خود ایجاد کنید، Content API به شما امکان میدهد به محض تغییر موجودی، بهروزرسانیها را ارسال کنید.
برای دریافت بازخورد فوری
در Content API، به جای اینکه پس از پردازش فیدهای داده، از طریق یک خلاصه ایمیل، به هر درخواست پاسخی فوراً پاسخ دهید. تاخیر پنج تا ده ثانیه ای برای درخواست های دسته ای بزرگ انتظار می رود.
برای تغییر مکرر داده های محصول خود
با استفاده از Content API میتوانید بهروزرسانیهای تدریجی موجودی محصول سریع خود را چندین بار در روز انجام دهید، در حالی که ارسال کل فید دادهتان در هر بار امکانپذیر نیست. اگر بهروزرسانیها بهصورت جداگانه در دسترس هستند، آنها را بهصورت جداگانه ارسال کنید، منتظر نمانید تا چندین بهروزرسانی وجود داشته باشد تا بتوانید آنها را دستهبندی کنید. به همین ترتیب، اگر بهروزرسانیها به صورت دستهای در دسترس هستند، آنها را به صورت دستهای ارسال کنید، آنها را به درخواستهای فردی تقسیم نکنید.
برای مدیریت چندین حساب فرعی
حسابهای Merchant Center که به تازگی ایجاد شدهاند، حسابهای تکی هستند که مجموعهای از دادههای محصول خود را نگه میدارند. این در اکثر موارد به خوبی کار می کند، اما با رشد حساب شما، ممکن است متوجه شوید که به سیستم مدیریت پیچیده تری برای محصولات خود نیاز دارید. اگر این مورد برای شماست، استفاده از حساب چند مشتری یا MCA را در نظر بگیرید. مدیریت سطح API یک حساب MCA را می توان از طریق سرویس حساب ها انجام داد و امکان افزودن و مدیریت حساب های فرعی را به صورت برنامه ای فراهم می کند. اطلاعات بیشتر در مورد نحوه دریافت حساب MCA را می توانید در اینجا بیابید.
نحوه استفاده از API
همانطور که از فیدهای داده استفاده می کنید از API استفاده نکنید
هنگام استفاده از منبع products
، از بهروزرسانی روزانه کل فید محصول خود اجتناب کنید. در عوض، بهطور خاص فقط محصولاتی را بهروزرسانی کنید که دادههای آنها واقعاً تغییر کرده است. ارسال کل فید داده شما از طریق منبع products
زمان و منابع بیشتری را هم برای Google و هم برای شما مصرف می کند.
از API برای بازیابی منظم اطلاعات محصولی که آپلود کرده اید استفاده نکنید
اگر مسئول نگهداری اطلاعات محصول در یک حساب Merchant Center خاص هستید، از درخواست اطلاعات محصول از Content API از طریق روش های products.get
یا products.list
به طور منظم خودداری کنید. برای مشتریانی که اطلاعات را آپلود میکنند، این روشها میتوانند به شما در رفع اشکال هنگام طراحی راهحلهایی که از Content API استفاده میکنند کمک کنند. با این حال، آنها برای بازیابی منظم اطلاعات محصول توسط چنین مشتریانی نیستند. شما باید منبع دیگری برای اطلاعات محصول خود داشته باشید، مانند پایگاه داده محصول محلی، و محصولات در Merchant Center باید محتوای آن منبع را منعکس کنند.
از فیدهای داده و Content API برای ارسال موارد محصول استفاده نکنید
اگر میخواهید برای ارسال موارد به API تغییر دهید، مطمئن شوید که دیگر از فیدهای داده برای ارسال موارد محصول استفاده نمیکنید. اگر به ارسال موارد در هر دو رسانه ادامه دهید، ممکن است نتایج غیرمنتظرهای رخ دهد.
آیا راهی وجود دارد که بتوانم با خیال راحت از API و فیدهای داده با هم استفاده کنم؟
می توانید فیدهای داده خود را با استفاده از سرویس Datafeed API دستکاری کنید. در حالی که این امر مدیریت فید داده را در مقیاس بسیار آسانتر میکند، به خاطر داشته باشید که نباید محصولات را با استفاده از API همزمان با فیدها وارد یا بهروزرسانی کنید، زیرا ممکن است نتایج غیرمنتظرهای رخ دهد.
چند نمونه دیگر از روش های قابل قبول برای استفاده مشترک از فیدها و API عبارتند از:
اجرای درخواستهای فقط خواندنی (دریافت یا فهرست) از API: برخی از بازرگانان میخواهند از API برای واکشی اطلاعات و بهروزرسانیهای وضعیت محصولات خود استفاده کنند. این قابل قبول است زیرا اطلاعات محصول فقط توسط فیدها به روز می شود.
استفاده از API برای مدیریت حسابهای فرعی ( سرویس حسابها ) و/یا تنظیمات مالیات و حمل و نقل در سطح حساب ( سرویس مالیات حساب و سرویس تنظیمات حمل و نقل ). اینها توابعی نیستند که Datafeeds بتواند ارائه دهد، بنابراین هیچ تضادی با استفاده از API برای مدیریت این توابع وجود ندارد.
چگونه از استفاده از فیدهای داده به استفاده از API مهاجرت کنم یا برعکس؟
اگر در حال حاضر از فیدهای داده استفاده میکنید و میخواهید فقط از API برای بهروزرسانی محصولات استفاده کنید، باید دادههای محصول خود را دوباره با API آپلود کنید. وقتی از خدمات محصولات برای بهروزرسانی یک محصول خاص استفاده میکنید، API کنترل اطلاعات محصول را در اختیار میگیرد و حذف محصول از فید داده یا حذف خود فید داده دیگر اطلاعات محصول را از حساب Merchant Center شما حذف نخواهد کرد. اگر میخواهید محصول را از فید داده یا خود فید داده حذف کنید، مطمئن شوید که هیچ بهروزرسانی فید دادهای وجود ندارد، در غیر این صورت فید داده دوباره مالکیت خود را به دست میگیرد و حذف محصول از فید داده باعث حذف محصول میشود.
اگر در حال حاضر فقط از API برای اطلاعات محصول استفاده میکنید و میخواهید از فیدهای داده بهعنوان منبع اصلی اطلاعات محصول خود استفاده کنید، میتوانید به سادگی فید داده جدید را به حساب Merchant Center خود اضافه کنید و آنها مالکیت محصولات فهرستشده خود را در اختیار خواهند گرفت. اگر محصولاتی هستند که میخواهید قبل از انقضا حذف شوند و صرفاً از API آپلود شدهاند، باید آنها را از طریق Merchant Center یا از طریق API حذف کنید.
چگونه می توانم چندین کشور را با محصولاتی که از Content API برای خرید استفاده می کنند، هدف قرار دهم؟
برای هدف قرار دادن چندین کشور با تبلیغات و فهرستهای رایگان برای محصولات ارسال شده از طریق Content API، کشورهای دیگر را در فید اصلی Content API در Merchant Center پیکربندی کنید یا آن کشورهای دیگر را از طریق قسمت shipping
در منبع products
اضافه کنید.
نمونه ای از نحوه تغییر تنظیمات فید اصلی Content API در زیر آمده است.
برای اطلاعات بیشتر، نگاه کنید به: هدفیابی تبلیغات خرید و فهرستهای رایگان در چندین کشور .
اطمینان حاصل کنید که کتابخانه های مشتری شما به روز هستند
اگر از کتابخانه سرویس گیرنده Google برای تعامل با Content API استفاده می کنید، مطمئن شوید که از مدیر بسته برای زبان برنامه نویسی انتخابی خود استفاده می کنید و مطمئن شوید که نسخه کتابخانه به روز است. برای اطلاعات بیشتر، به راهنمای برنامهنویس برای زبان انتخابی خود در نمونهها و کتابخانهها مراجعه کنید.
مطمئن شوید که از ویژگی های مقصد برای کنترل اینکه کدام محصولات در برنامه های خرید مختلف ظاهر می شوند استفاده کنید
Content API به طور خودکار تنظیمات پیشفرض را برای فید Content API شما همانطور که در Merchant Center پیکربندی شده است، اتخاذ میکند. برای کنترل مشارکت برنامه در سطح محصول در یک فید یا از طریق Content API می توانید از ویژگی های محصول includedDestinations
یا excludedDestinations
استفاده کنید.
اگر فید API شما در برنامهای انتخاب شده است، به عنوان مثال، خرید در Google (که قبلا به عنوان Shopping Actions شناخته میشد)، اما میخواهید محصولات خاصی را حذف کنید، از ویژگی excludedDestinations
استفاده کنید و Shopping Actions
به عنوان مقدار مشخص کنید. مشروط بر اینکه هیچ خطایی وجود نداشته باشد، با این کار تنظیمات فید پیشفرض در Merchant Center بازنویسی میشود و آن مورد خاص در Buy on Google (که قبلاً به عنوان Shopping Actions شناخته میشد) ظاهر نمیشود. برعکس، اگر فید شما در برنامهای انتخاب نشده است، به عنوان مثال، خرید، میتوانید موارد جداگانه را با استفاده از ویژگی includedDestinations
و Shopping_ads
بهعنوان مقدار اضافه کنید و مورد در تبلیغات خرید ظاهر شود.
برای اطلاعات بیشتر در مورد ویژگی های محصول includedDestinations
و excludedDestinations
، به مرکز راهنمایی مراجعه کنید.
حتما موارد را قبل از انقضا به روز کنید
اگر موردی قبل از انقضا تغییر نکرد، 30 روز پس از آخرین به روز رسانی یا در تاریخ انقضای مشخص شده اگر زودتر از آن تغییر کند، برای جلوگیری از غیرفعال شدن آن، آن را به روز کنید. اگر نیاز به بهروزرسانی بسیاری از موارد دارید، زیرا هیچکدام از آنها تغییر نکردهاند یا نمیتوانید آخرین بهروزرسانی آنها را ردیابی کنید، همه موارد را همزمان بهروزرسانی نکنید، بلکه بار را به طور مساوی در چند روز پخش کنید.
فید Content API را حذف نکنید زیرا ممکن است محصولات شما ناپدید شوند
اولین باری که محصولی را با channel:online
از طریق Content API آپلود میکنید، فید جدیدی با عنوان Content API در Merchant Center ظاهر میشود. اولین باری که محصولی را با channel:local
از طریق Content API آپلود میکنید، فید جدیدی با عنوان Content API با عنوان فرعی محصولات محلی در Merchant Center ظاهر میشود. مطمئن شوید که به طور تصادفی فید آنلاین یا محلی Content API را حذف نکنید. بسته به فیدی که حذف میکنید، محصولات آنلاین یا محلی که از طریق Content API به Merchant Center اضافه کردهاید حذف خواهند شد.
با استفاده از روش دستهای سفارشی، درخواستهای چندگانه را به یک سرویس یکسان کنید
بهجای درخواستهای متوالی یا موازی زیادی برای یک سرویس، یک درخواست دستهای سفارشی ایجاد کنید که شامل تمام درخواستهای مورد نظر باشد. به این ترتیب، تأخیر برای درخواست به نقطه پایانی API تنها یک بار برای فراخوانی دستهای سفارشی به جای هر درخواست منفرد اتفاق میافتد، که مخصوصاً اگر درخواستهای متوالی ارسال میکنید، مهم است.
بهروزرسانیهای متعدد را برای یک مورد در یک دسته ارسال نکنید
این به دلیل عدم اطمینان در مورد ترتیب بهروزرسانیها، نتایج غیرمنتظرهای را به همراه خواهد داشت و ممکن است باعث خطای تداخل شود.
برای موارد بدون تغییر بهروزرسانی ارسال نکنید
اطمینان حاصل کنید که فقط درخواستهایی را برای اقلام محصول جدید، تغییر یافته یا حذف شده ارسال میکنید، مگر اینکه موارد دیگر منقضی شوند.
اگر قیمت ها و/یا در دسترس بودن به سرعت تغییر می کند، از فیدهای تکمیلی استفاده کنید
اگر در به روز نگه داشتن قیمت، در دسترس بودن یا اطلاعات فروش یک محصول مشکل دارید، از فیدهای تکمیلی موجود در منبع products
برای ارسال به روز رسانی فقط برای این ویژگی ها استفاده کنید. از آنجایی که بهروزرسانیهای فید تکمیلی کوچک هستند، میتوانید در یک دوره معین بهروزرسانیهای فید تکمیلی بیشتری نسبت به بهروزرسانیهای کامل محصول انجام دهید، که به حفظ قیمت و در دسترس بودن محصولات شما با صفحات فرود شما کمک میکند.
راه دیگر برای بهروزرسانی قیمت و در دسترس بودن محصول، استفاده از بهروزرسانی خودکار آیتمها است. این میتواند علاوه بر بهروزرسانیهای API برای جلوگیری از عدم تطابق بین اطلاعات موجود در Merchant Center و اطلاعات صفحههای فرود محصول استفاده شود. با این حال، به خاطر داشته باشید که این برای رفع مشکلات کوچک قیمت محصول و دقت در دسترس بودن طراحی شده است، بنابراین بهروزرسانی خودکار آیتمها جایگزینی برای ارائه اطلاعات صحیح از طریق API نیست.
چه زمانی از یک نشانه رفرش استفاده کنیم
نشانه تازهسازی در سربرگ HTTP درخواستهای مجوز برگردانده میشود. این شامل بسیاری دیگر از اطلاعات مرتبط با احراز هویت است، اما توکن بهروزرسانی اغلب قطعهای است که توسعهدهندگان میخواهند به آن دست پیدا کنند، زیرا نیاز به درخواست مکرر کاربر برای احراز هویت را از بین میبرد، زیرا توکنهای دسترسی فقط 60 دقیقه قبل از انقضا دوام میآورند.