Google-এ আপনি যেসব প্রোডাক্ট বিক্রি করেন সেগুলির জন্য বিশেষ অফার দেখাতে প্রোমোশন ব্যবহার করুন। Google Search, Shopping ও Chrome সহ বিভিন্ন Google প্রপার্টি জুড়ে প্রোমোশন দেখানো হয়। অনুমোদন পেতে হলে প্রোমোশনকে নির্দিষ্ট কিছু শর্ত পূরণ করতে হবে। আরও তথ্যের জন্য, প্রোমোশন সংক্রান্ত মাপকাঠি দেখুন।
আপনার প্রোডাক্টে কোনও প্রোমোশন যোগ করলে, ক্রেতারা একটি বিশেষ অফারের লিঙ্ক দেখতে পান। যেমন, "১৫% ছাড়" বা "ফ্রি শিপিং"। অফার লিঙ্ক আপনার প্রোডাক্টের প্রতি ক্রেতাদের আগ্রহ বাড়াতে পারে এবং তাদের সেই প্রোডাক্ট কিনতে উত্সাহিত করতে পারে। সব প্রোমোশন চেক-আউট বা পয়েন্ট অফ সেলে প্রয়োগ করা হয়।
আরও তথ্যের জন্য, প্রোমোশন সংক্রান্ত প্রাথমিক তথ্য দেখুন।
পূর্বশর্ত
আপনার প্রোমোশন দেখানোর আগে Google-কে আপনার ব্যবসা ও প্রোডাক্ট সম্পর্কে নির্দিষ্ট তথ্য প্রদান করতে হবে। আপনার কাছে নিম্নলিখিতগুলি থাকতে হবে:
- Google Merchant Center-এ একটি প্রোডাক্ট ডেটা সোর্স।
- Google Merchant Center-এ একটি প্রচারের বিস্তারিত তথ্যের উৎস।
- শপিং ক্যাম্পেন-এর জন্য Google Ads অ্যাকাউন্ট।
এছাড়াও, আপনাকে অবশ্যই Merchant Center অ্যাকাউন্টটি প্রোমোশন প্রোগ্রামে নথিভুক্ত করতে হবে। আপনি আগে থেকেই এনরোল করেছেন কিনা সেই বিষয়ে নিশ্চিত না হলে, Merchant Center চেক করুন।
আপনি এনরোল না করে থাকলে, অনুরোধ ফর্ম পূরণ করুন। আপনি কখন প্রয়োগ করা শুরু করতে পারবেন তা প্রোমোশন টিম আপনাকে জানাবে।
আরও তথ্যের জন্য, অংশগ্রহণের মাপকাঠি ও নীতি দেখুন।
ডেটা সোর্স তৈরি করুন
আপনি
accounts.dataSources.create
পদ্ধতি ব্যবহার করে প্রচারের ডেটা সোর্স তৈরি করতে পারবেন। আগে থেকে থাকা কোনও প্রচারের বিস্তারিত তথ্যের উৎস
উপলভ্য থাকলে, সব ডেটা সোর্স ফিরিয়ে আনতে
accounts.dataSources.list
পদ্ধতি ব্যবহার করুন। তারপর আপনি প্রোমোশন তৈরি করতে
প্রোমোশন ডেটা সোর্সের name ফিল্ড ব্যবহার করতে পারবেন।
ভবিষ্যতে API কলে সরাসরি সেগুলি উল্লেখ করতে, আমরা প্রতিটি প্রোমোশনের জন্য আপনার লোকাল ডেটাবেসে
accounts.dataSources.name স্টোর করার জন্য জোরালো সাজেশন দিচ্ছি। আপনি
আপনার স্থানীয় ডেটাবেসের ওয়ান-অফ ব্যাকফিল করতে পারবেন।
প্রোমোশন যোগ করার জন্য কীভাবে ডেটা সোর্স তৈরি করতে হয় তা নিম্নলিখিত অনুরোধ থেকে জানা যায়:
POST https://merchantapi.googleapis.com/datasources/v1/accounts/{ACCOUNT_ID}/dataSources
{
"displayName": "{DISPLAY_NAME}",
"promotionDataSource": {
"contentLanguage": "{CONTENT_LANGUAGE}",
"targetCountry": "{TARGET_COUNTRY}"
}
}
নিম্নলিখিতগুলি পরিবর্তন করুন:
- {ACCOUNT_ID}: Merchant Center UI-তে যেমন দেখা যায়, আপনার অ্যাকাউন্টের অনন্য শনাক্তকারী।
- {DISPLAY_NAME}: ডেটা সোর্সের ডিসপ্লে নাম।
- {CONTENT_LANGUAGE}: ডেটা সোর্সে প্রোডাক্টের দুই-অক্ষরের ISO 639-1 ভাষা কোড।
- {TARGET_COUNTRY}: আপনি যে টার্গেট করা দেশে প্রচার দেখাতে চান, সেটির CLDR টেরিটরি কোড।
অনুরোধটি সফলভাবে রান করার পরে, আপনি নিম্নলিখিত উত্তর দেখতে পাবেন যাতে নতুন তৈরি করা প্রচারের বিস্তারিত তথ্যের উৎস সম্পর্কে বিবরণ রয়েছে:
{
"name": "accounts/{ACCOUNT_ID}/dataSources/{DATASOURCE_ID}",
"dataSourceId": "{DATASOURCE_ID}",
"displayName": "{DISPLAY_NAME}",
"promotionDataSource": {
"targetCountry": "{TARGET_COUNTRY}",
"contentLanguage": "{CONTENT_LANGUAGE}"
},
"input": "API"
}
প্রোমোশন তৈরি করুন
আপনি
accounts.promotions.insert
পদ্ধতি ব্যবহার করে প্রোমোশন তৈরি বা আপডেট করতে পারবেন। accounts.promotions.insert পদ্ধতি
ইনপুট হিসেবে
promotions
রিসোর্স এবং ডেটা সোর্সের নাম নেয়। এটি নতুন বা আপডেট করা প্রোমোশন ফিরিয়ে দেয়, যদি সফল হয়।
প্রোমোশন তৈরি করতে ডেটা সোর্স-এর নাম প্রয়োজন। এছাড়াও, আপনার অনুরোধে নিম্নলিখিত ফিল্ডের জন্য ভ্যালু প্রদান করতে হবে:
contentLanguageredemptionChannelpromotionIdtargetCountryattributes.offerTypeattributes.genericRedemptionCodeattributes.couponValueTypeattributes.productApplicabilityattributes.promotionEffectiveTimePeriod.endTimeattributes.promotionEffectiveTimePeriod.startTimeattributes.longTitle
Google আপনার প্রচার ডিস্ট্রিবিউট করার আগে তা পর্যালোচনা করে অনুমোদন করে। আরও তথ্যের জন্য, প্রচারের অনুমোদন প্রক্রিয়া দেখুন।
আমরা সাজেস্ট করি যে আপনি প্রোমোশন সংক্রান্ত নীতি পড়ে দেখুন যাতে আপনার তৈরি করা প্রোমোশন ভ্যালু যোগ করে এবং Shopping বিজ্ঞাপন সংক্রান্ত নীতি মেনে চলে।
অনলাইন প্রোমোশন কীভাবে তৈরি করতে হয় তা নিম্নলিখিত অনুরোধ থেকে দেখুন:
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 {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
আপনার প্রচার আইডি সেট করার ক্ষেত্রে প্রযোজ্য নিয়ম সম্পর্কে তথ্যের জন্য, প্রচার আইডি অ্যাট্রিবিউটের জন্য ন্যূনতম প্রয়োজনীয়তা দেখুন।
আবশ্যিক offerType ফিল্ডের জন্য সঠিক ভ্যালু হল NO_CODE এবং
GENERIC_CODE। আপনি এইসব ভ্যালুর মধ্যে কোনও একটি প্রদান না করলে, API অনুরোধ HTTP 400 রেসপন্স [offer_type] validation/missing_required: Invalid or
missing required attribute: offer_type সহ
ব্যর্থ হয়। আপনি কোনও বাধ্যতামূলক ফিল্ড পূরণ না করলে,
একই ধরনের সমস্যার মেসেজ দেখানো হয়।
আপনি attributes.genericRedemptionCode ফিল্ডের জন্য কোনও ভ্যালু না দিলে,
অনুরোধটি HTTP 400 রেসপন্স [genericRedemptionCode] No
redemption code provided সহ ব্যর্থ হয়।
promotion.attributes.promotionDisplayTimePeriod.startTime এবং promotion.attributes.promotionDisplayTimePeriod.endTime ফিল্ডের
ভ্যালু অবশ্যই yyyy-mm-ddThh:mm:ssZ ফর্ম্যাটে
হতে হবে। এইসব ফিল্ডের ভ্যালু যেন ভবিষ্যতের তারিখ দিয়ে
পরিবর্তন করা হয় তা নিশ্চিত করুন।
আরও তথ্যের জন্য, প্রোমোশন ডেটা স্পেসিফিকেশন দেখুন।
প্রোমোশন তৈরি করার পেশাদার পদ্ধতি সম্পর্কে জানতে, প্রোমোশন সংক্রান্ত পেশাদার পদ্ধতি দেখুন।
প্রোমোশন-সম্পর্কিত অ্যাট্রিবিউটের তালিকা দেখতে, স্ট্রাকচার্ড ডেটা অ্যাট্রিবিউট যোগ করুন দেখুন।
প্রোমোশন তৈরির অনুরোধ সফলভাবে সম্পূর্ণ হওয়ার পরে, API ব্যবহার করে প্রোমোশনটি ফিরিয়ে আনতে বা Merchant Center-এ দেখাতে কয়েক মিনিট সময় লাগতে পারে।
অ্যাসিঙ্ক্রোনাসভাবে একাধিক প্রোমোশন যোগ করার জন্য আপনি ব্যবহার করতে পারেন এমন একটি স্যাম্পেল এখানে দেওয়া হল:
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.api.gax.grpc.ChannelPoolSettings;
import com.google.api.gax.grpc.InstantiatingGrpcChannelProvider;
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();
// Creates a channel provider. This provider manages a pool of gRPC channels
// to enhance throughput for bulk operations. Each individual channel in the pool
// can handle up to approximately 100 concurrent requests.
//
// Channel: A single connection pathway to the service.
// Pool: A collection of multiple channels managed by this provider.
// Requests are distributed across the channels in the pool.
//
// We recommend estimating the number of concurrent requests you'll make, divide by 50 (50%
// utilization of channel capacity), and set the pool size to that number.
InstantiatingGrpcChannelProvider channelProvider =
InstantiatingGrpcChannelProvider.newBuilder()
.setChannelPoolSettings(ChannelPoolSettings.staticallySized(30))
.build();
PromotionsServiceSettings merchantPromotionsServiceSettings =
PromotionsServiceSettings.newBuilder()
.setCredentialsProvider(FixedCredentialsProvider.create(credential))
.setTransportChannelProvider(channelProvider)
.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>");
}
}
শুরু করার জন্য আপনি নিম্নলিখিত কিছু প্রচারের নমুনা ব্যবহার করতে পারেন।
সব প্রোডাক্ট ও স্টোরের জন্য প্রযোজ্য স্থানীয় প্রচার
নিম্নলিখিত স্যাম্পেল অনুরোধ থেকে বোঝা যায় যে কীভাবে স্থানীয় প্রচার তৈরি করতে হয় যা আপনার Merchant Center অ্যাকাউন্টের সব প্রোডাক্ট এবং আপনার লিঙ্ক করা Business Profile অ্যাকাউন্টে যোগ করা সব স্টোরের ক্ষেত্রে প্রযোজ্য।
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 ফিল্ডটি পূরণ করতে হবে। এটি সব প্রোডাক্ট বা শুধুমাত্র নির্দিষ্ট প্রোডাক্টের ক্ষেত্রে
প্রোমোশন প্রযোজ্য কিনা তা নির্দেশ করে। সাপোর্ট করা ভ্যালু
হল ALL_PRODUCTS এবং SPECIFIC_PRODUCTS। আরও তথ্যের জন্য, আপনার প্রচারের জন্য
প্রোডাক্ট বেছে নিন দেখুন।
couponValueType ফিল্ডটি পূরণ করতে হবে। আপনি যে ধরনের প্রোমোশন চালাচ্ছেন,
এটি তা নির্দেশ করে। সাপোর্ট করা ভ্যালুর তালিকা দেখতে,
কুপন ভ্যালুর ধরন দেখুন।
আপনার বেছে নেওয়া কুপনের মূল্যের ধরনের উপর নির্ভর করে,
কিছু অ্যাট্রিবিউট প্রয়োজন।
minimumPurchaseQuantity ফিল্ডের মাধ্যমে আপনি প্রোমোশনাল অফার রিডিম করার জন্য প্রয়োজনীয় ন্যূনতম কেনাকাটার পরিমাণ সেট করতে পারবেন। আরও তথ্যের জন্য,
প্রোমোশনের জন্য কেনাকাটার ন্যূনতম পরিমাণ
দেখুন।
একইভাবে, প্রোমোশন রিডিম করার জন্য প্রয়োজনীয় ন্যূনতম কেনাকাটার পরিমাণ সেট করতে
আপনি minimumPurchaseAmount ফিল্ড ব্যবহার করতে পারেন। আরও তথ্যের জন্য,
কেনাকাটার ন্যূনতম পরিমাণ দেখুন।
স্থানীয় প্রচার তৈরি করার জন্য আপনাকে যেসব ভ্যালু দিতে হবে সেই সম্পর্কে আরও জানতে, স্থানীয় প্রচারের জন্য ডেটা সোর্স স্পেসিফিকেশন দেখুন।
রিডিমশন কোড সহ বেছে নেওয়া প্রোডাক্টের ক্ষেত্রে প্রযোজ্য অনলাইন প্রোমোশন
নিম্নলিখিত স্যাম্পেল অনুরোধ থেকে জানা যায় যে কীভাবে অনলাইন প্রোমোশন তৈরি করতে হয় যা রিডিমশন কোড সহ বেছে নেওয়া প্রোডাক্টের ক্ষেত্রে প্রযোজ্য হয়।
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"
}
প্রোমোশন দেখুন
প্রোমোশন দেখতে,
accounts.promotions.get ব্যবহার করুন।
এই GET অনুরোধ শুধু পড়া যাবে। এটির জন্য আপনার merchantId এবং প্রোমোশনের আইডি
প্রয়োজন। GET পদ্ধতি সংশ্লিষ্ট প্রোমোশন রিসোর্স ফিরিয়ে দেয়।
যেমন:
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 {ACCESS_TOKEN}' \
--header 'Accept: application/json' \
--compressed
নিম্নলিখিতগুলি পরিবর্তন করুন:
- {ACCOUNT_ID}: আপনার Merchant Center অ্যাকাউন্টের অনন্য শনাক্তকারী।
- {PROMOTION_ID}: আপনি যে প্রোমোশন ফিরিয়ে আনতে চান, তার অনন্য শনাক্তকারী। ফর্ম্যাট হল {CHANNEL} ~{CONTENT_LANGUAGE}~ {TARGET_COUNTRY}~{PROMOTION_ID} ।
মনে রাখবেন, API ব্যবহার করে নতুন তৈরি করা প্রোমোশন খুঁজে পেতে কয়েক মিনিট সময় লাগে।
স্থানীয় প্রচার দেখা
নিম্নলিখিত স্যাম্পেল অনুরোধটি একটি স্থানীয় প্রচারকে ফিরিয়ে আনে যার প্রচার আইডি হল
in_store~en~US~buy_2_get_10_off।
GET https://merchantapi.googleapis.com/promotions/v1/accounts/{ACCOUNT_ID}/promotions/in_store~en~US~buy_2_get_10_off
অনুরোধটি সফল হওয়ার পরে, আপনি নিম্নলিখিত উত্তর দেখতে পাবেন:
{
"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"
}
এই স্যাম্পেলের moneyOffAmount ফিল্ডে প্রমোশনে অফার করা ছাড়ের পরিমাণ
উল্লেখ করা আছে। আরও তথ্যের জন্য, প্রোমোশনের
আর্থিক ছাড়ের পরিমাণ দেখুন।
এই স্যাম্পেলের promotionUrl ফিল্ডে স্টোরের ওয়েবসাইটের লিঙ্ক দেওয়া আছে
যেখানে ক্রেতারা প্রচার সম্পর্কে আরও তথ্য পাবেন। আপনি promotionUrl ফিল্ড অন্তর্ভুক্ত না করলে, স্থানীয় ইনভেনটরি
বিজ্ঞাপন প্রোমোশন একটি সমস্যা দেখায়।
অনলাইন প্রোমোশন দেখুন
নিম্নলিখিত স্যাম্পেল অনুরোধটি একটি অনলাইন প্রোমোশন ফিরিয়ে আনে যার প্রোমোশন আইডি হল
online~en~US~25_pct_off।
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}"
}
এই স্যাম্পেলে ব্যবহার করা itemIdInclusion ফিল্ডে সেইসব প্রোডাক্টের উল্লেখ করা হয়েছে যেগুলি
প্রোমোশনের জন্য উপযুক্ত। আরও তথ্যের জন্য, প্রোমোশনের জন্য
প্রোডাক্ট আইডি দেখুন।
প্রোমোশনের তালিকা
আপনি
promotions.list
পদ্ধতি ব্যবহার করে তৈরি করা সব প্রোমোশন দেখতে পারবেন।
এখানে একটি নমুনা অনুরোধ দেওয়া হল:
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 {ACCESS_TOKEN}' \
--header 'Accept: application/json' \
--compressed
আপনার অ্যাকাউন্টে থাকা সব প্রোমোশনের তালিকা উত্তরে দেওয়া আছে। প্রতিটি
প্রোমোশনের জন্য, আপনি promotionId, redemptionChannel,
dataSource, promotionStatus এবং আরও অনেক কিছুর মতো বিবরণ দেখতে পাবেন।
প্রোমোশনের স্ট্যাটাস দেখা
প্রোমোশনের স্ট্যাটাস দেখতে,
promotions.get
বা
promotions.list
পদ্ধতির মাধ্যমে ফেরত পাঠানো promotionStatus অ্যাট্রিবিউট দেখুন।
promotionStatus ফিল্ডে নিম্নলিখিত মান থাকতে পারে:
IN_REVIEW: প্রচারটি এখনও পর্যালোচনা করা হচ্ছে।REJECTED: প্রোমোশনটি অনুমোদিত হয়নি।LIVE: প্রোমোশনটি অনুমোদিত এবং অ্যাক্টিভ আছে।STOPPED: অ্যাকাউন্ট থেকে প্রোমোশন বন্ধ করা হয়েছে।EXPIRED: প্রোমোশনটি আর অ্যাক্টিভ নেই।PENDING: প্রোমোশন বন্ধ করা হয়নি এবং সব রিভিউ অনুমোদন করা হয়েছে, তবে অ্যাক্টিভ হওয়ার তারিখটি ভবিষ্যতে।STATE_UNSPECIFIED: প্রোমোশনের স্ট্যাটাস জানা নেই।
আপনার তৈরি করা প্রোমোশনের অনুমোদন প্রক্রিয়া বুঝতে, প্রোমোশন অনুমোদন প্রক্রিয়া দেখুন।
স্যাম্পেল প্রোমোশন স্ট্যাটাস
নিচের স্যাম্পেলগুলি সফল এবং ব্যর্থ অনুরোধের মধ্যে পার্থক্য প্রদর্শন করে।
প্রোডাক্ট ম্যাপিং নেই
নিম্নলিখিত রেসপন্স বডি একটি অনলাইন প্রচার দেখায় যা প্রোডাক্ট ম্যাপিং না থাকার কারণে অনুমোদিত নয়।
"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"
]
}
]
}
অননুমোদিত প্রচার সংক্রান্ত সমস্যার সমাধান করতে এবং ভবিষ্যতে কীভাবে অনুমোদন বাতিল হওয়া এড়ানো যায় তা জানতে, অননুমোদিত প্রচার সংক্রান্ত সমস্যার সমাধান করুন লিঙ্ক দেখুন।
আপনার তৈরি করা কোনও প্রোমোশন অনুমোদিত না হলে, আপনি একটি ইমেল পাবেন যাতে প্রত্যাখ্যানের কারণ এবং সমস্যা সমাধানের নির্দেশাবলী উল্লেখ করা থাকবে।
প্রোমোশন মূল্যায়ন করা হচ্ছে
নিম্নলিখিত রেসপন্স বডি এমন একটি প্রচার দেখায় যা এখনও মূল্যায়ন করা হচ্ছে।
"promotionStatus": {
"destinationStatuses": [
{
"reportingContext": "FREE_LISTINGS",
"status": "PENDING"
},
{
"destination": "SHOPPING_ADS",
"status": "PENDING"
}
],
"itemLevelIssues": []
}
অনুমোদিত ও লাইভ প্রোমোশন
নিচের রেসপন্স বডিতে এমন একটি প্রোমোশন দেখানো হয়েছে যা ক্রেতারা দেখতে পাবেন।
"promotionStatus": {
"destinationStatuses": [
{
"reportingContext": "FREE_LISTINGS",
"status": "LIVE"
},
{
"destination": "SHOPPING_ADS",
"status": "LIVE"
} ],
"itemLevelIssues": []
}
আরও তথ্যের জন্য, প্রোমোশন স্ট্যাটাস সংক্রান্ত প্রায়শই জিজ্ঞাসিত প্রশ্ন দেখুন।
প্রোমোশন মুছুন
API ব্যবহার করে কোনও প্রোমোশন মুছে ফেলা সম্ভব নয়। কোনও প্রোমোশন মুছে ফেলতে, আপনাকে Merchant Center UI অ্যাক্সেস করতে হবে। আরও তথ্যের জন্য, প্রোমোশন এডিট করা বা প্রোমোশনের স্ট্যাটাস পরিবর্তন করা দেখুন।
আগে থেকে থাকা কোনও প্রোমোশন শেষ করতে, আপনি
accounts.promotions.insert
পদ্ধতি ব্যবহার করে attributes.promotionEffectiveTimePeriod.endTime ফিল্ডটি আপডেট করে
অতীতের কোনও সময় সেট করতে পারেন।
আরও জানুন
- আরও জানতে, প্রোমোশন সহায়তা কেন্দ্র দেখুন।
- সাধারণ সমস্যার সমাধান করতে, প্রোমোশন সাব-API সম্পর্কিত সমস্যার সমাধান করুন দেখুন।
- Content API for Shopping থেকে মাইগ্রেট করার ব্যাপারে জানতে, প্রোমোশন ম্যানেজমেন্ট মাইগ্রেট করুন দেখুন।