Google'da sattığınız ürünlerle ilgili özel teklifleri sergilemek için promosyonları kullanın. Promosyonlar Google Arama, Alışveriş ve Chrome gibi farklı Google mülklerinde gösterilir. Promosyonların onaylanması için belirli ölçütleri karşılaması gerekir. Daha fazla bilgi için Promosyon kriterleri başlıklı makaleyi inceleyin.
Ürünlerinize promosyon eklediğinizde alışveriş yapanlar özel teklif bağlantısı görür. Örneğin, "%15 indirim" veya "Ücretsiz kargo". Fırsat bağlantıları, ürünlerinizin çekiciliğini artırabilir ve alışveriş yapan kullanıcıları satın almaya teşvik edebilir. Tüm promosyonlar, ödeme sırasında veya satış noktasında uygulanır.
Daha fazla bilgi için Promosyonlarla ilgili temel bilgiler başlıklı makaleyi inceleyin.
Ön koşullar
Google, promosyonlarınızı göstermeden önce işletmeniz ve ürünleriniz hakkında belirli bilgiler sağlamanızı gerektirir. Aşağıdakilere sahip olmanız gerekir:
- Google Merchant Center'da etkin bir ürün feed'i.
- Google Merchant Center'da etkin bir promosyon feed'i.
- Alışveriş kampanyaları için Google Ads hesabı.
Ayrıca, Merchant Center hesabınızı Promosyonlar programına kaydetmeniz gerekir. Programa kayıtlı olup olmadığınızdan emin değilseniz Merchant Center'ı kontrol edin.
Kayıtlı değilseniz istek formunu doldurun. Uygulamaya başlamaya hazır olduğunuzda promosyonlar ekibi sizi bilgilendirir.
Daha fazla bilgi için Katılım ölçütleri ve politikaları başlıklı makaleyi inceleyin.
Veri kaynağı oluşturma
Promosyon veri kaynağı oluşturmak için accounts.dataSources.create yöntemini kullanabilirsiniz. Mevcut bir promosyon veri kaynağı varsa tüm veri kaynaklarını almak için accounts.dataSources.list
yöntemini kullanın. Ardından, promosyon oluşturmak için promosyon veri kaynağının name
alanını kullanabilirsiniz.
Aşağıdaki istek, promosyon eklemek için nasıl veri kaynağı oluşturulacağını gösterir:
POST https://merchantapi.googleapis.com/datasources/v1/accounts/{ACCOUNT_ID}/dataSources
{
"displayName": "{DISPLAY_NAME}",
"promotionDataSource": {
"contentLanguage": "{CONTENT_LANGUAGE}",
"targetCountry": "{TARGET_COUNTRY}"
}
}
Aşağıdakini değiştirin:
- {ACCOUNT_ID}: Merchant Center kullanıcı arayüzünde görünen hesabınızın benzersiz tanımlayıcısı.
- {DISPLAY_NAME}: Veri kaynağının görünen adı.
- {CONTENT_LANGUAGE}: Veri kaynağındaki ürünlerin iki harfli ISO 639-1 dil kodu.
- {TARGET_COUNTRY}: Promosyonların görünmesini istediğiniz hedef ülkenin CLDR bölge kodu.
İstek başarıyla çalıştırıldıktan sonra, yeni oluşturulan promosyon veri kaynağıyla ilgili ayrıntıları içeren aşağıdaki yanıtı görürsünüz:
{
"name": "accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}",
"dataSourceId": "{DATASOURCE_ID}",
"displayName": "{DISPLAY_NAME}",
"promotionDataSource": {
"targetCountry": "{TARGET_COUNTRY}",
"contentLanguage": "{CONTENT_LANGUAGE}"
},
"input": "API"
}
Promosyon oluşturma
Promosyon oluşturmak veya güncellemek için accounts.promotions.insert
yöntemini kullanabilirsiniz. accounts.promotions.insert
yöntemi, giriş olarak bir promotions
kaynağı ve bir veri kaynağı adı alır. Başarılı olursa yeni veya güncellenmiş promosyonu döndürür.
Promosyon oluşturmak için veri kaynağının adı gerekir. Ayrıca isteğinizde aşağıdaki alanlar için değerler sağlamanız gerekir:
contentLanguage
redemptionChannel
promotionId
targetCountry
attributes.offerType
attributes.genericRedemptionCode
attributes.couponValueType
attributes.productApplicability
attributes.promotionEffectiveTimePeriod.endTime
attributes.promotionEffectiveTimePeriod.startTime
attributes.longTitle
Google, promosyonlarınızı dağıtmadan önce inceler ve onaylar. Daha fazla bilgi için Promosyon onay süreci başlıklı makaleyi inceleyin.
Oluşturduğunuz promosyonların değer kattığından ve Alışveriş reklamı politikalarına uygun olduğundan emin olmak için Promosyon politikalarını incelemenizi öneririz.
Aşağıdaki istek, online promosyonun nasıl oluşturulacağını gösterir:
HTTP
POST https://merchantapi.googleapis.com/promotions/v1/accounts/{ACCOUNT_ID}/promotions:insert
{
"promotion": {
"name": "{PROMOTION_NAME}",
"promotionId": "{PROMOTION_ID}",
"targetCountry": "{TARGET_COUNTRY}",
"redemptionChannel": [
"ONLINE"
],
"contentLanguage": "{CONTENT_LANGUAGE}",
"attributes": {
"promotionDisplayTimePeriod": {
"endTime": "{PROMOTION_END_TIME}",
"startTime": "{PROMOTION_START_TIME}"
},
"offerType": "{OFFER_TYPE}",
"longTitle": "{LONG_TITLE}"
}
},
"dataSource": "accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}"
}
cURL
curl --request POST \
'https://merchantapi.googleapis.com/promotions/v1/accounts/{ACCOUNT_ID}/promotions:insert?key=[YOUR_API_KEY]' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--header 'Content-Type: application/json' \
--data '{"dataSource":"{DATASOURCE_ID}","promotion":{"name":"accounts/{ACCOUNT_ID}/promotions/{PROMOTION_ID}y","promotionId":"abc","contentLanguage":"en","targetCountry":"US","redemptionChannel":["ONLINE"]}}' \
--compressed
Promosyon kodu ayarlamayla ilgili geçerli kurallar hakkında bilgi edinmek için Promosyon kodu özelliği için minimum koşullar başlıklı makaleyi inceleyin.
Zorunlu offerType
alanı için geçerli değerler NO_CODE
ve GENERIC_CODE
'dir. Bu değerlerden birini sağlamazsanız API isteği, HTTP 400 yanıtı [offer_type] validation/missing_required: Invalid or
missing required attribute: offer_type
ile başarısız olur. Zorunlu alanlardan herhangi birini sağlamadığınızda benzer bir hata mesajı döndürülür.
attributes.genericRedemptionCode
alanı için değer sağlamazsanız istek, HTTP 400 yanıtı [genericRedemptionCode] No
redemption code provided
ile başarısız olur.
promotion.attributes.promotionDisplayTimePeriod.startTime
ve promotion.attributes.promotionDisplayTimePeriod.endTime
alanlarının değerleri yyyy-mm-ddThh:mm:ssZ
biçiminde olmalıdır. Bu alanların değerlerini gelecekteki tarihlerle değiştirdiğinizden emin olun.
Daha fazla bilgi için Promosyon verileri spesifikasyonu başlıklı makaleyi inceleyin.
Promosyon oluşturmayla ilgili en iyi uygulamalar için Promosyonlarla ilgili en iyi uygulamalar başlıklı makaleyi inceleyin.
Promosyonlarla ilgili özelliklerin listesi için Yapılandırılmış veri özellikleri ekleme başlıklı makaleyi inceleyin.
Promosyon oluşturma isteği başarıyla çalıştıktan sonra, promosyonun API kullanılarak alınması veya Merchant Center'da görünmesi birkaç dakika sürebilir.
Birden fazla promosyonu eşzamansız olarak eklemek için kullanabileceğiniz bir örnek aşağıda verilmiştir:
Java
import com.google.api.core.ApiFuture;
import com.google.api.core.ApiFutureCallback;
import com.google.api.core.ApiFutures;
import com.google.api.gax.core.FixedCredentialsProvider;
import com.google.auth.oauth2.GoogleCredentials;
import com.google.common.util.concurrent.MoreExecutors;
import com.google.protobuf.Timestamp;
import com.google.shopping.merchant.promotions.v1.Attributes;
import com.google.shopping.merchant.promotions.v1.CouponValueType;
import com.google.shopping.merchant.promotions.v1.InsertPromotionRequest;
import com.google.shopping.merchant.promotions.v1.OfferType;
import com.google.shopping.merchant.promotions.v1.ProductApplicability;
import com.google.shopping.merchant.promotions.v1.Promotion;
import com.google.shopping.merchant.promotions.v1.PromotionsServiceClient;
import com.google.shopping.merchant.promotions.v1.PromotionsServiceSettings;
import com.google.shopping.merchant.promotions.v1.RedemptionChannel;
import com.google.shopping.type.CustomAttribute;
import com.google.shopping.type.Destination.DestinationEnum;
import com.google.type.Interval;
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.stream.Collectors;
import shopping.merchant.samples.utils.Authenticator;
import shopping.merchant.samples.utils.Config;
/** This class demonstrates how to insert multiple promotions asynchronously. */
public class InsertPromotionsAsyncSample {
private static String generateRandomString() {
String characters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
Random random = new Random();
StringBuilder sb = new StringBuilder(8);
for (int i = 0; i < 8; i++) {
sb.append(characters.charAt(random.nextInt(characters.length())));
}
return sb.toString();
}
private static Promotion createPromotion(String accountId) {
String merchantPromotionId = generateRandomString();
Attributes attributes =
Attributes.newBuilder()
.setProductApplicability(ProductApplicability.ALL_PRODUCTS)
.setOfferType(OfferType.GENERIC_CODE)
.setGenericRedemptionCode("ABCD1234")
.setLongTitle("My promotion")
.setCouponValueType(CouponValueType.PERCENT_OFF)
.addPromotionDestinations(DestinationEnum.SHOPPING_ADS)
.setPercentOff(10)
// Note that promotions have a 6-month limit.
// For more information, read here: https://support.google.com/merchants/answer/2906014
// Also note that only promotions valid within the past 365 days are shown in the UI.
.setPromotionEffectiveTimePeriod(
Interval.newBuilder()
.setStartTime(Timestamp.newBuilder().setSeconds(1726842472))
.setEndTime(Timestamp.newBuilder().setSeconds(1726842473))
.build())
.build();
return Promotion.newBuilder()
.setName(String.format("accounts/%s/merchantPromotions/%s", accountId, merchantPromotionId))
.setPromotionId(merchantPromotionId)
.setContentLanguage("fr")
.setTargetCountry("CH")
.addRedemptionChannel(RedemptionChannel.ONLINE)
.setAttributes(attributes)
// Custom attributes allow you to add additional information which is not available in
// Attributes. For example, you might want to pilot experimental functionality.
.addCustomAttributes(
CustomAttribute.newBuilder()
.setName("another example name")
.setValue("another example value")
.build())
.build();
}
public static void asyncInsertPromotions(String accountId, String dataSourceId) throws Exception {
GoogleCredentials credential = new Authenticator().authenticate();
PromotionsServiceSettings merchantPromotionsServiceSettings =
PromotionsServiceSettings.newBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(credential))
.build();
try (PromotionsServiceClient merchantPromotionsServiceClient =
PromotionsServiceClient.create(merchantPromotionsServiceSettings)) {
// Arbitrarily creates five merchant promotions with random IDs.
List<InsertPromotionRequest> requests = new ArrayList<>();
for (int i = 0; i < 5; i++) {
InsertPromotionRequest request =
InsertPromotionRequest.newBuilder()
.setParent(String.format("accounts/%s", accountId))
.setPromotion(createPromotion(accountId))
.setDataSource(String.format("accounts/%s/dataSources/%s", accountId, dataSourceId))
.build();
requests.add(request);
}
// Inserts the merchant promotions.
List<ApiFuture<Promotion>> futures =
requests.stream()
.map(
request ->
merchantPromotionsServiceClient.insertPromotionCallable().futureCall(request))
.collect(Collectors.toList());
// Creates callback to handle the responses when all are ready.
ApiFuture<List<Promotion>> responses = ApiFutures.allAsList(futures);
ApiFutures.addCallback(
responses,
new ApiFutureCallback<List<Promotion>>() {
@Override
public void onSuccess(List<Promotion> results) {
System.out.println("Inserted merchant promotions below:");
System.out.println(results);
}
@Override
public void onFailure(Throwable throwable) {
System.out.println(throwable);
}
},
MoreExecutors.directExecutor());
} catch (Exception e) {
System.out.println(e);
}
}
public static void main(String[] args) throws Exception {
Config config = Config.load();
asyncInsertPromotions(config.getAccountId().toString(), "<YOUR_DATA_SOURCE_ID>");
}
}
Başlamak için kullanabileceğiniz bazı örnek promosyonları aşağıda bulabilirsiniz.
Tüm ürünler ve tüm mağazalar için geçerli olan yerel bir promosyon
Aşağıdaki örnek istek, Merchant Center hesabınızdaki tüm ürünler ve bağlı İşletme Profili hesabınıza eklenen tüm mağazalar için geçerli olan bir yerel promosyonun nasıl oluşturulacağını gösterir.
POST https://merchantapi.googleapis.com/promotions/v1/accounts/{ACCOUNT_ID}/promotions:insert
{
"promotion": {
"promotionId": "buy_2_get_10_off",
"contentLanguage": "en",
"targetCountry": "US",
"redemptionChannel": [
"IN_STORE"
],
"attributes": {
"longTitle": "Buy 2 and get 10$ OFF purchase",
"productApplicability": "ALL_PRODUCTS",
"offerType": "NO_CODE",
"couponValueType": "BUY_M_GET_MONEY_OFF",
"promotionDisplayTimePeriod": {
"startTime": "2024-2-06T00:47:44Z",
"endTime": "2024-5-06T00:47:44Z"
},
"promotionEffectiveTimePeriod": {
"startTime": "2024-2-06T00:47:44Z",
"endTime": "2024-5-06T00:47:44Z"
},
"moneyOffAmount": {
"amountMicros": "1000000",
"currencyCode": "USD"
},
"minimumPurchaseQuantity": 2,
"storeApplicability": "ALL_STORES",
"promotionUrl": "http://promotionnew4url.com/",
"promotionDestinations": [
"LOCAL_INVENTORY_ADS"
],
}
},
"dataSource": "accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}"
}
productApplicability
alanı zorunludur. Promosyonun tüm ürünler için mi yoksa yalnızca belirli ürünler için mi geçerli olduğunu gösterir. ALL_PRODUCTS
ve SPECIFIC_PRODUCTS
değerleri desteklenir. Daha fazla bilgi için Promosyonunuz için ürün seçme başlıklı makaleyi inceleyin.
couponValueType
alanı zorunludur. Yayınladığınız promosyonun türünü belirtir. Desteklenen değerlerin listesi için Kupon değeri türü başlıklı makaleyi inceleyin. Seçtiğiniz kupon değeri türüne bağlı olarak bazı özellikler zorunludur.
minimumPurchaseQuantity
alanı, promosyon teklifinin kullanılabilmesi için gereken minimum satın alma miktarı değerini ayarlamanıza olanak tanır. Daha fazla bilgi için Promosyon için minimum satın alma miktarı başlıklı makaleyi inceleyin.
Benzer şekilde, promosyonun kullanılabilmesi için gereken minimum satın alma tutarını belirlemek üzere minimumPurchaseAmount
alanını kullanabilirsiniz. Daha fazla bilgi için Minimum satın alma tutarı başlıklı makaleyi inceleyin.
Yerel promosyon oluşturmak için sağlamanız gereken değerler hakkında daha fazla bilgi edinmek istiyorsanız Yerel promosyonlar için veri kaynağı spesifikasyonları başlıklı makaleyi inceleyin.
Belirli ürünler için geçerli olan ve teklifi kullanma kodu içeren bir online promosyon
Aşağıdaki örnek istekte, teklifi kullanma koduyla belirli ürünler için geçerli olan bir online promosyonun nasıl oluşturulacağı gösterilmektedir.
POST https://merchantapi.googleapis.com/promotions/v1/accounts/{ACCOUNT_ID}/promotions:insert
{
"promotion": {
"promotionId": "25_pct_off",
"contentLanguage": "en",
"targetCountry": "US",
"redemptionChannel": [
"ONLINE"
],
"attributes": {
"longTitle": "10% off on selected items",
"productApplicability": "SPECIFIC_PRODUCTS",
"offerType": "GENERIC_CODE",
"genericRedemptionCode": "SPRINGSALE",
"couponValueType": "PERCENT_OFF",
"promotionDisplayTimePeriod": {
"startTime": "2024-2-06T00:47:44Z",
"endTime": "2024-5-06T00:47:44Z"
},
"promotionEffectiveTimePeriod": {
"startTime": "2024-2-06T00:47:44Z",
"endTime": "2024-5-06T00:47:44Z"
},
"percentOff": 25,
"promotionDestinations": [
"FREE_LISTINGS"
],
"itemIdInclusion": [
"1499860100",
"1499860101",
"1499860102",
"1499860103",
"1499860104"
],
}
},
"dataSource": "accounts/{ACCOUNT_ID}/dataSources/1000000573361824"
}
Promosyonları göster
Bir promosyonu görüntülemek için accounts.promotions.get
değerini kullanın.
Bu GET
isteği salt okunur. Bu işlem için merchantId
ve promosyon kimliği gerekir. GET
yöntemi, ilgili promosyon kaynağını döndürür.
Örneğin:
HTTP
GET https://merchantapi.googleapis.com/promotions/v1/accounts/{ACCOUNT_ID}/promotions/{PROMOTION_ID}
cURL
curl \
'https://merchantapi.googleapis.com/promotions/v1/accounts/{ACCOUNT_ID}/promotions/{PROMOTION_ID}?key=[YOUR_API_KEY]' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--compressed
Aşağıdakini değiştirin:
- {ACCOUNT_ID}: Merchant Center hesabınızın benzersiz tanımlayıcısı.
- {PROMOTION_ID}: Almak istediğiniz promosyonun benzersiz tanımlayıcısı. Biçim {CHANNEL} ~{CONTENT_LANGUAGE}~ {TARGET_COUNTRY}~{PROMOTION_ID} şeklindedir.
Yeni oluşturulan bir promosyonun API kullanılarak alınabilmesi için birkaç dakika geçmesi gerektiğini unutmayın.
Yerel promosyonları görüntüleme
Aşağıdaki örnek istek, promosyon kimliği in_store~en~US~buy_2_get_10_off
olan bir yerel promosyonu alır.
GET https://merchantapi.googleapis.com/promotions/v1/accounts/{ACCOUNT_ID}/promotions/in_store~en~US~buy_2_get_10_off
İstek başarılı olduktan sonra aşağıdaki yanıtı görürsünüz:
{
"name": "accounts/{ACCOUNT_ID}/promotions/in_store~en~US~buy_2_get_10_off",
"promotionId": "buy_2_get_10_off",
"contentLanguage": "en",
"targetCountry": "US",
"redemptionChannel": [
"IN_STORE"
],
"attributes": {
"longTitle": "Buy 2 and get 10$ OFF purchase",
"productApplicability": "ALL_PRODUCTS",
"offerType": "NO_CODE",
"couponValueType": "BUY_M_GET_MONEY_OFF",
"promotionDisplayTimePeriod": {
"startTime": "2024-2-06T00:47:44Z",
"endTime": "2024-5-06T00:47:44Z"
},
"promotionEffectiveTimePeriod": {
"startTime": "2024-2-06T00:47:44Z",
"endTime": "2024-5-06T00:47:44Z"
},
"moneyOffAmount": {
"amountMicros": "1000000",
"currencyCode": "USD"
},
"minimumPurchaseQuantity": 2,
"storeApplicability": "ALL_STORES",
"promotionUrl": "http://promotionnew4url.com/",
"promotionDestinations": [
"LOCAL_INVENTORY_ADS"
],
}
"dataSource": "accounts/{ACCOUNT_ID}/dataSources/1000000573361824"
}
Bu örnekteki moneyOffAmount
alanı, promosyonda sunulan indirimi sağlar. Daha fazla bilgi için Promosyonun parasal indirim tutarı başlıklı makaleyi inceleyin.
Bu örnekteki promotionUrl
alanı, alışveriş yapanların promosyon hakkında daha fazla bilgi edinebileceği mağazanın web sitesinin bağlantısını sağlar. promotionUrl
alanını eklemezseniz yerel envanter reklamı promosyonları hata döndürür.
Online promosyon görüntüleme
Aşağıdaki örnek istek, promosyon kimliği online~en~US~25_pct_off
olan bir online promosyonu alır.
GET https://merchantapi.googleapis.com/promotions/v1/accounts/{ACCOUNT_ID}/promotions/online~en~US~25_pct_off
{
"name": "accounts/{ACCOUNT_ID}/promotions/online~en~US~25_pct_off",
"promotionId": "25_pct_off",
"contentLanguage": "en",
"targetCountry": "US",
"redemptionChannel": [
"ONLINE"
],
"attributes": {
"longTitle": "10% off on selected items",
"productApplicability": "SPECIFIC_PRODUCTS",
"offerType": "GENERIC_CODE",
"genericRedemptionCode": "WINTERGIFT",
"couponValueType": "PERCENT_OFF",
"promotionDisplayTimePeriod": {
"startTime": "2024-2-06T00:47:44Z",
"endTime": "2024-5-06T00:47:44Z"
},
"promotionEffectiveTimePeriod": {
"startTime": "2024-2-06T00:47:44Z",
"endTime": "2024-5-06T00:47:44Z"
},
"percentOff": 25,
"promotionDestinations": [
"FREE_LISTINGS"
],
"itemIdInclusion": [
"1499860100",
"1499860101",
"1499860102",
"1499860103",
"1499860104"
],
}
"dataSource": "accounts/{ACCOUNT_ID}/dataSources/{dataSource}"
}
Bu örnekte kullanılan itemIdInclusion
alanı, promosyona uygun ürünlerden bahseder. Daha fazla bilgi için Promosyon için ürün kimliği başlıklı makaleyi inceleyin.
Promosyonları listeleme
Oluşturulan tüm promosyonları görüntülemek için
promotions.list
yöntemini kullanabilirsiniz.
Aşağıda örnek bir istek verilmiştir:
HTTP
GET https://merchantapi.googleapis.com/promotions/v1/{ACCOUNT_ID}/promotions
cURL
curl \
'https://merchantapi.googleapis.com/promotions/v1/accounts/{ACCOUNT_ID}/promotions?key=[YOUR_API_KEY]' \
--header 'Authorization: Bearer [YOUR_ACCESS_TOKEN]' \
--header 'Accept: application/json' \
--compressed
Yanıt, hesabınızdaki tüm promosyonların listesini içerir. Her promosyon için promotionId
, redemptionChannel
, dataSource
, promotionStatus
gibi ayrıntıları görebilirsiniz.
Promosyonun durumunu görüntüleme
Bir promosyonun durumunu görmek için promotions.get
veya promotions.list
yöntemi tarafından döndürülen promotionStatus
özelliğine bakın.
promotionStatus
alanı aşağıdaki değerleri içerebilir:
IN_REVIEW
: Promosyon hâlâ inceleniyor.REJECTED
: Promosyon onaylanmadı.LIVE
: Promosyon onaylanmış ve etkin olmalıdır.STOPPED
: Promosyon, hesap tarafından durdurulmuştur.EXPIRED
: Promosyon artık etkin değildir.PENDING
: Promosyon durdurulmamış ve tüm yorumlar onaylanmış ancak etkinleştirme tarihi gelecektedir.STATE_UNSPECIFIED
: Bilinmeyen promosyon durumu.
Oluşturduğunuz bir promosyonun onay sürecini anlamak için Promosyon onay süreci başlıklı makaleyi inceleyin.
Örnek promosyon durumu
Aşağıdaki örneklerde, başarılı ve başarısız istekler arasındaki fark gösterilmektedir.
Ürün eşlemesi eksik
Aşağıdaki yanıt gövdesinde, eksik ürün eşleme nedeniyle onaylanmamış bir online tanıtım gösterilmektedir.
"promotionStatus": {
"destinationStatuses": [
{
"reportingContext": "FREE_LISTINGS",
"status": "REJECTED"
}
],
"itemLevelIssues": [
{
"code": "promotion_sku_unmapped",
"severity": "DISAPPROVED",
"resolution": "merchant_action",
"reportingContext": "FREE_LISTINGS",
"description": "Unmapped",
"detail": "This promotion couldn't be tested during review because it doesn't apply to any products that are currently in your Products feed",
"documentation": "https://support.google.com/merchants/answer/2906014",
"applicableCountries": [
"US"
]
},
{
"code": "promotion_sku_additional_requirements",
"severity": "DISAPPROVED",
"resolution": "merchant_action",
"reportingContext": "FREE_LISTINGS",
"description": "Promotion conditions not allowed",
"detail": "This promotion has additional requirements that are not allowed such as requiring customers to verify additional details like phone number or ID before showing the promotion details",
"documentation": "https://support.google.com/merchants/answer/2906014",
"applicableCountries": [
"US"
]
}
]
}
Onaylanmayan promosyonlarla ilgili sorunları gidermek ve gelecekteki retleri nasıl önleyeceğinizi öğrenmek için Onaylanmayan promosyonlarla ilgili sorunları düzeltme başlıklı makaleyi inceleyin.
Oluşturduğunuz bir promosyon onaylanmazsa reddedilme nedenini ve sorunları düzeltme talimatlarını içeren bir e-posta alırsınız.
Promosyon değerlendiriliyor
Aşağıdaki yanıt gövdesinde, değerlendirilmeye devam eden bir promosyon gösterilmektedir.
"promotionStatus": {
"destinationStatuses": [
{
"reportingContext": "FREE_LISTINGS",
"status": "PENDING"
},
{
"destination": "SHOPPING_ADS",
"status": "PENDING"
}
],
"itemLevelIssues": []
}
Onaylanmış ve etkin bir promosyon
Aşağıdaki yanıt metninde, tüketiciler tarafından görülebilen bir promosyon gösterilmektedir.
"promotionStatus": {
"destinationStatuses": [
{
"reportingContext": "FREE_LISTINGS",
"status": "LIVE"
},
{
"destination": "SHOPPING_ADS",
"status": "LIVE"
} ],
"itemLevelIssues": []
}
Daha fazla bilgi için Promosyon durumu hakkında SSS başlıklı makaleyi inceleyin.
Promosyonları silme
API kullanılarak promosyon silinemez. Bir promosyonu silmek için Merchant Center kullanıcı arayüzüne erişmeniz gerekir. Daha fazla bilgi için Promosyonları düzenleme veya promosyon durumunu değiştirme başlıklı makaleyi inceleyin.
Mevcut bir promosyonu sonlandırmak için attributes.promotionEffectiveTimePeriod.endTime
alanını geçmişteki bir zamanla güncelleyerek accounts.promotions.insert yöntemini kullanabilirsiniz.
Daha fazla bilgi
- Daha fazla bilgi için Promosyonlar Yardım Merkezi'ne göz atın.
- Sık karşılaşılan sorunları gidermek için Promotions alt API'siyle ilgili sorunları giderme başlıklı makaleyi inceleyin.
- Content API for Shopping'den geçiş yapma hakkında bilgi edinmek için Promosyon yönetimine geçiş yapma başlıklı makaleyi inceleyin.