Rozwiązywanie problemów związanych z podrzędnym interfejsem API promocji

Na tej stronie opisujemy, jak rozwiązywać problemy związane z podrzędnym interfejsem API promocji.

Utwórz promocję

Jeśli używasz żądania accounts.promotions.insert, aby wstawić promocję, upewnij się, że w treści żądania znajdują się wszystkie wymagane pola. Te pola są wymagane:

  • promotion.promotionId
  • promotion.contentLanguage
  • promotion.redemptionChannel
  • promotion.targetCountry
  • promotion.attributes.longTitle
  • promotion.attributes.promotionEffectiveTimePeriod.startTime
  • promotion.attributes.promotionEffectiveTimePeriod.endTime
  • promotion.attributes.promotionDestinations
  • promotion.attributes.couponValueType
  • promotion.attributes.offerType
  • promotion.attributes.productApplicability
  • promotion.attributes.promotionUrl

Nieprawidłowy okres obowiązywania promocji

Jeśli w żądaniu accounts.promotions.insert podasz nieprawidłowe daty wejścia w życie promocji, zobaczysz ten komunikat o błędzie:

Invalid value at 'promotion.attributes.promotion_effective_time_period.start_time'

Aby naprawić ten błąd, upewnij się, że wartość podana w polu promotionDisplayTimePeriod.startTime jest taka sama jak wartość podana w polu promotionEffectiveTimePeriod.startTime lub wcześniejsza. Upewnij się też, że wartość podana w polu promotionDisplayTimePeriod.endTime jest taka sama jak wartość podana w polu promotionEffectiveTimePeriod.endTime lub wcześniejsza.

Wartości pól startTime i endTime muszą być w formacie UTC RFC3339, czyli yyyy-mm-ddThh:mm:ssZ. Na przykład: 2024-08-15T18:20:20Z.

Nie określono minimalnej wielkości zakupu

Jeśli attributes.couponValueType to BUY_M_GET_N_PERCENT_OFF lub BUY_M_GET_N_MONEY_OFF, musisz podać wartość pola attributes.minimumPurchaseQuantity w żądaniu accounts.promotions.insert.

Jeśli nie podasz wartości w polu attributes.minimumPurchaseQuantity w żądaniu accounts.promotions.insert, zobaczysz ten komunikat o błędzie:

[minimumPurchaseQuantity] Missing benefit or restriction attributes for its type

Aby naprawić ten błąd, sprawdź, czy w żądaniu podano wartość pola minimumPurchaseQuantity.

Nie określono kwoty rabatu

Jeśli wartość pola attributes.couponValueType to MONEY_OFF, musisz podać wartość pola attributes.moneyOffAmount w żądaniu accounts.promotions.insert.

Jeśli nie podasz wartości w polu attributes.moneyOffAmount w żądaniu accounts.promotions.insert, zobaczysz ten komunikat o błędzie:

[moneyOffAmount] Missing benefit or restriction attributes for its type

Aby naprawić ten błąd, sprawdź, czy w żądaniu podano wartość pola attributes.moneyOffAmount. Kwota musi być podana w mikrowalucie.

Nie podano opisu prezentu

Jeśli wartość pola attributes.couponValueType to FREE_GIFT, musisz podać wartość pola attributes.freeGiftDescription w żądaniu accounts.promotions.insert.

Jeśli nie podasz wartości w polu attributes.freeGiftDescription w żądaniu accounts.promotions.insert, zobaczysz ten komunikat o błędzie:

[freeGiftDescription] Missing benefit or restriction attributes for its type

Aby naprawić ten błąd, sprawdź, czy w żądaniu podano wartość pola attributes.freeGiftDescription.

Bezpłatna dostawa nie jest obsługiwana w przypadku promocji produktów dostępnych lokalnie

Jeśli wartość pola redemptionChannel to IN_STORE, a wartość pola attributes.couponValueType to FREE_SHIPPING_STANDARD, FREE_SHIPPING_OVERNIGHT lub FREE_SHIPPING_TWO_DAY, zobaczysz ten komunikat o błędzie:

[shippingServiceNames] Free shipping types are not supported for local promotions

Aby naprawić ten błąd, sprawdź, czy wartość pola redemptionChannel to ONLINE.

Nie określono kanału wykorzystania

Jeśli wartość pola redemptionChannel nie jest określona w żądaniu accounts.promotions.insert, zobaczysz ten komunikat o błędzie:

[redemptionChannel] Required parameter: redemptionChannel

Aby naprawić ten błąd, sprawdź, czy w żądaniu podano wartość pola redemptionChannel.

Pole contentLanguage promocji i źródło danych nie są zgodne

Jeśli wartość pola contentLanguage nie jest taka sama jak wartość pola contentLanguage w źródle danych o promocjach, którego używasz w żądaniu accounts.promotions.insert, zobaczysz ten komunikat o błędzie:

[promotion] Could not find the proper data target for the provided feedLabel and contentLanguage

Aby rozwiązać ten problem, upewnij się, że wartość pola contentLanguage jest taka sama jak wartość pola contentLanguage w źródle danych o promocjach, którego używasz.

Ten błąd pojawi się również, jeśli wartość targetCountry nie jest taka sama jak wartość pola targetCountry w źródle danych o promocjach, którego używasz.

Więcej informacji