# Content API for Shopping . promotions

## Instance Methods

Close httplib2 connections.

Inserts a promotion for your Merchant Center account. If the promotion already exists, then it will update the promotion instead.

Retrieves a promotion from your Merchant Center account.

### Method Details

`close()`

    Close httplib2 connections.

`create(merchantId, body=None, x__xgafv=None)`

    Inserts a promotion for your Merchant Center account. If the promotion already exists, then it will update the promotion instead.

    Args:
      merchantId: string, Required. The ID of the account that contains the collection. (required)
      body: object, The request body.
        The object takes the form of:

    { #  The Promotions feature is currently in alpha and is not yet publicly available via Content API for Shopping. This documentation is provided for reference only may be subject to change. Represents a promotion. See the following articles for more details. * [Promotions feed specification](https://support.google.com/merchants/answer/2906014) * [Local promotions feed specification](https://support.google.com/merchants/answer/10146130) * [Promotions on Buy on Google product data specification](https://support.google.com/merchants/answer/9173673)
      "brand": [ # Product filter by brand for the promotion.
        "A String",
      ],
      "brandExclusion": [ # Product filter by brand exclusion for the promotion.
        "A String",
      ],
      "contentLanguage": "A String", # Required. The content language used as part of the unique identifier.
      "couponValueType": "A String", # Required. Coupon value type for the promotion.
      "freeGiftDescription": "A String", # Free gift description for the promotion.
      "freeGiftItemId": "A String", # Free gift item id for the promotion.
      "freeGiftValue": { # The price represented as a number and currency. # Free gift value for the promotion.
        "currency": "A String", # The currency of the price.
        "value": "A String", # The price represented as a number.
      },
      "genericRedemptionCode": "A String", # Generic redemption code for the promotion. To be used with the above field.
      "getThisQuantityDiscounted": 42, # The number of items discounted in the promotion.
      "id": "A String", # Required. Output only. The REST promotion id to uniquely identify the promotion. Content API methods that operate on promotions take this as their promotionId parameter. The REST ID for a promotion is of the form channel:contentLanguage:targetCountry:promotionId The channel field will have a value of "online", "in_store", or "online_in_store".
      "itemGroupId": [ # Product filter by item group id for the promotion.
        "A String",
      ],
      "itemGroupIdExclusion": [ # Product filter by item group id exclusion for the promotion.
        "A String",
      ],
      "itemId": [ # Product filter by item id for the promotion.
        "A String",
      ],
      "itemIdExclusion": [ # Product filter by item id exclusion for the promotion.
        "A String",
      ],
      "limitQuantity": 42, # Maximum purchase quantity for the promotion.
      "limitValue": { # The price represented as a number and currency. # Maximum purchase value for the promotion.
        "currency": "A String", # The currency of the price.
        "value": "A String", # The price represented as a number.
      },
      "longTitle": "A String", # Long title for the promotion.
      "minimumPurchaseAmount": { # The price represented as a number and currency. # Minimum purchase amount for the promotion.
        "currency": "A String", # The currency of the price.
        "value": "A String", # The price represented as a number.
      },
      "minimumPurchaseQuantity": 42, # Minimum purchase quantity for the promotion.
      "moneyBudget": { # The price represented as a number and currency. # Promotion cost cap of the promotion.
        "currency": "A String", # The currency of the price.
        "value": "A String", # The price represented as a number.
      },
      "moneyOffAmount": { # The price represented as a number and currency. # The money off amount offered in the promotion.
        "currency": "A String", # The currency of the price.
        "value": "A String", # The price represented as a number.
      },
      "offerType": "A String", # Required. Type of the promotion.
      "orderLimit": 42, # Order limit for the promotion.
      "percentOff": 42, # The percentage discount offered in the promotion.
      "productApplicability": "A String", # Required. Applicability of the promotion to either all products or only specific products.
      "productType": [ # Product filter by product type for the promotion.
        "A String",
      ],
      "productTypeExclusion": [ # Product filter by product type exclusion for the promotion.
        "A String",
      ],
      "promotionDestinationIds": [ # Destination ID for the promotion.
        "A String",
      ],
      "promotionDisplayDates": "A String", # String representation of the promotion display dates.
      "promotionDisplayTimePeriod": { # A message that represents a time period. # TimePeriod representation of the promotion display dates.
        "endTime": "A String", # The ending timestamp.
        "startTime": "A String", # The starting timestamp.
      },
      "promotionEffectiveDates": "A String", # Required. String representation of the promotion effective dates.
      "promotionEffectiveTimePeriod": { # A message that represents a time period. # Required. TimePeriod representation of the promotion effective dates.
        "endTime": "A String", # The ending timestamp.
        "startTime": "A String", # The starting timestamp.
      },
      "promotionId": "A String", # Required. The user provided promotion id to uniquely identify the promotion.
      "redemptionChannel": [ # Required. Redemption channel for the promotion. At least one channel is required.
        "A String",
      ],
      "shippingServiceNames": [ # Shipping service names for thse promotion.
        "A String",
      ],
      "targetCountry": "A String", # Required. The target country used as part of the unique identifier.
    }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { #  The Promotions feature is currently in alpha and is not yet publicly available via Content API for Shopping. This documentation is provided for reference only may be subject to change. Represents a promotion. See the following articles for more details. * [Promotions feed specification](https://support.google.com/merchants/answer/2906014) * [Local promotions feed specification](https://support.google.com/merchants/answer/10146130) * [Promotions on Buy on Google product data specification](https://support.google.com/merchants/answer/9173673)
      "brand": [ # Product filter by brand for the promotion.
        "A String",
      ],
      "brandExclusion": [ # Product filter by brand exclusion for the promotion.
        "A String",
      ],
      "contentLanguage": "A String", # Required. The content language used as part of the unique identifier.
      "couponValueType": "A String", # Required. Coupon value type for the promotion.
      "freeGiftDescription": "A String", # Free gift description for the promotion.
      "freeGiftItemId": "A String", # Free gift item id for the promotion.
      "freeGiftValue": { # The price represented as a number and currency. # Free gift value for the promotion.
        "currency": "A String", # The currency of the price.
        "value": "A String", # The price represented as a number.
      },
      "genericRedemptionCode": "A String", # Generic redemption code for the promotion. To be used with the above field.
      "getThisQuantityDiscounted": 42, # The number of items discounted in the promotion.
      "id": "A String", # Required. Output only. The REST promotion id to uniquely identify the promotion. Content API methods that operate on promotions take this as their promotionId parameter. The REST ID for a promotion is of the form channel:contentLanguage:targetCountry:promotionId The channel field will have a value of "online", "in_store", or "online_in_store".
      "itemGroupId": [ # Product filter by item group id for the promotion.
        "A String",
      ],
      "itemGroupIdExclusion": [ # Product filter by item group id exclusion for the promotion.
        "A String",
      ],
      "itemId": [ # Product filter by item id for the promotion.
        "A String",
      ],
      "itemIdExclusion": [ # Product filter by item id exclusion for the promotion.
        "A String",
      ],
      "limitQuantity": 42, # Maximum purchase quantity for the promotion.
      "limitValue": { # The price represented as a number and currency. # Maximum purchase value for the promotion.
        "currency": "A String", # The currency of the price.
        "value": "A String", # The price represented as a number.
      },
      "longTitle": "A String", # Long title for the promotion.
      "minimumPurchaseAmount": { # The price represented as a number and currency. # Minimum purchase amount for the promotion.
        "currency": "A String", # The currency of the price.
        "value": "A String", # The price represented as a number.
      },
      "minimumPurchaseQuantity": 42, # Minimum purchase quantity for the promotion.
      "moneyBudget": { # The price represented as a number and currency. # Promotion cost cap of the promotion.
        "currency": "A String", # The currency of the price.
        "value": "A String", # The price represented as a number.
      },
      "moneyOffAmount": { # The price represented as a number and currency. # The money off amount offered in the promotion.
        "currency": "A String", # The currency of the price.
        "value": "A String", # The price represented as a number.
      },
      "offerType": "A String", # Required. Type of the promotion.
      "orderLimit": 42, # Order limit for the promotion.
      "percentOff": 42, # The percentage discount offered in the promotion.
      "productApplicability": "A String", # Required. Applicability of the promotion to either all products or only specific products.
      "productType": [ # Product filter by product type for the promotion.
        "A String",
      ],
      "productTypeExclusion": [ # Product filter by product type exclusion for the promotion.
        "A String",
      ],
      "promotionDestinationIds": [ # Destination ID for the promotion.
        "A String",
      ],
      "promotionDisplayDates": "A String", # String representation of the promotion display dates.
      "promotionDisplayTimePeriod": { # A message that represents a time period. # TimePeriod representation of the promotion display dates.
        "endTime": "A String", # The ending timestamp.
        "startTime": "A String", # The starting timestamp.
      },
      "promotionEffectiveDates": "A String", # Required. String representation of the promotion effective dates.
      "promotionEffectiveTimePeriod": { # A message that represents a time period. # Required. TimePeriod representation of the promotion effective dates.
        "endTime": "A String", # The ending timestamp.
        "startTime": "A String", # The starting timestamp.
      },
      "promotionId": "A String", # Required. The user provided promotion id to uniquely identify the promotion.
      "redemptionChannel": [ # Required. Redemption channel for the promotion. At least one channel is required.
        "A String",
      ],
      "shippingServiceNames": [ # Shipping service names for thse promotion.
        "A String",
      ],
      "targetCountry": "A String", # Required. The target country used as part of the unique identifier.
    }

`get(merchantId, id, x__xgafv=None)`

    Retrieves a promotion from your Merchant Center account.

    Args:
      merchantId: string, Required. The ID of the account that contains the collection. (required)
      id: string, Required. REST ID of the promotion to retrieve. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { #  The Promotions feature is currently in alpha and is not yet publicly available via Content API for Shopping. This documentation is provided for reference only may be subject to change. Represents a promotion. See the following articles for more details. * [Promotions feed specification](https://support.google.com/merchants/answer/2906014) * [Local promotions feed specification](https://support.google.com/merchants/answer/10146130) * [Promotions on Buy on Google product data specification](https://support.google.com/merchants/answer/9173673)
      "brand": [ # Product filter by brand for the promotion.
        "A String",
      ],
      "brandExclusion": [ # Product filter by brand exclusion for the promotion.
        "A String",
      ],
      "contentLanguage": "A String", # Required. The content language used as part of the unique identifier.
      "couponValueType": "A String", # Required. Coupon value type for the promotion.
      "freeGiftDescription": "A String", # Free gift description for the promotion.
      "freeGiftItemId": "A String", # Free gift item id for the promotion.
      "freeGiftValue": { # The price represented as a number and currency. # Free gift value for the promotion.
        "currency": "A String", # The currency of the price.
        "value": "A String", # The price represented as a number.
      },
      "genericRedemptionCode": "A String", # Generic redemption code for the promotion. To be used with the above field.
      "getThisQuantityDiscounted": 42, # The number of items discounted in the promotion.
      "id": "A String", # Required. Output only. The REST promotion id to uniquely identify the promotion. Content API methods that operate on promotions take this as their promotionId parameter. The REST ID for a promotion is of the form channel:contentLanguage:targetCountry:promotionId The channel field will have a value of "online", "in_store", or "online_in_store".
      "itemGroupId": [ # Product filter by item group id for the promotion.
        "A String",
      ],
      "itemGroupIdExclusion": [ # Product filter by item group id exclusion for the promotion.
        "A String",
      ],
      "itemId": [ # Product filter by item id for the promotion.
        "A String",
      ],
      "itemIdExclusion": [ # Product filter by item id exclusion for the promotion.
        "A String",
      ],
      "limitQuantity": 42, # Maximum purchase quantity for the promotion.
      "limitValue": { # The price represented as a number and currency. # Maximum purchase value for the promotion.
        "currency": "A String", # The currency of the price.
        "value": "A String", # The price represented as a number.
      },
      "longTitle": "A String", # Long title for the promotion.
      "minimumPurchaseAmount": { # The price represented as a number and currency. # Minimum purchase amount for the promotion.
        "currency": "A String", # The currency of the price.
        "value": "A String", # The price represented as a number.
      },
      "minimumPurchaseQuantity": 42, # Minimum purchase quantity for the promotion.
      "moneyBudget": { # The price represented as a number and currency. # Promotion cost cap of the promotion.
        "currency": "A String", # The currency of the price.
        "value": "A String", # The price represented as a number.
      },
      "moneyOffAmount": { # The price represented as a number and currency. # The money off amount offered in the promotion.
        "currency": "A String", # The currency of the price.
        "value": "A String", # The price represented as a number.
      },
      "offerType": "A String", # Required. Type of the promotion.
      "orderLimit": 42, # Order limit for the promotion.
      "percentOff": 42, # The percentage discount offered in the promotion.
      "productApplicability": "A String", # Required. Applicability of the promotion to either all products or only specific products.
      "productType": [ # Product filter by product type for the promotion.
        "A String",
      ],
      "productTypeExclusion": [ # Product filter by product type exclusion for the promotion.
        "A String",
      ],
      "promotionDestinationIds": [ # Destination ID for the promotion.
        "A String",
      ],
      "promotionDisplayDates": "A String", # String representation of the promotion display dates.
      "promotionDisplayTimePeriod": { # A message that represents a time period. # TimePeriod representation of the promotion display dates.
        "endTime": "A String", # The ending timestamp.
        "startTime": "A String", # The starting timestamp.
      },
      "promotionEffectiveDates": "A String", # Required. String representation of the promotion effective dates.
      "promotionEffectiveTimePeriod": { # A message that represents a time period. # Required. TimePeriod representation of the promotion effective dates.
        "endTime": "A String", # The ending timestamp.
        "startTime": "A String", # The starting timestamp.
      },
      "promotionId": "A String", # Required. The user provided promotion id to uniquely identify the promotion.
      "redemptionChannel": [ # Required. Redemption channel for the promotion. At least one channel is required.
        "A String",
      ],
      "shippingServiceNames": [ # Shipping service names for thse promotion.
        "A String",
      ],
      "targetCountry": "A String", # Required. The target country used as part of the unique identifier.
    }