# 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 updates 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 updates 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:

    { # 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. `en` content language is available for all target countries. `fr` content language is available for `CA` and `FR` target countries, and `de` content language is available for `DE` target country.
      "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 `offerType` 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 has 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", # Required. 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. # Cost cap for 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. Deprecated. Use `promotion_display_time_period` instead.
      "promotionDisplayTimePeriod": { # A message that represents a time period. # `TimePeriod` representation of the promotion's display dates.
        "endTime": "A String", # The ending timestamp.
        "startTime": "A String", # The starting timestamp.
      },
      "promotionEffectiveDates": "A String", # String representation of the promotion effective dates. Deprecated. Use `promotion_effective_time_period` instead.
      "promotionEffectiveTimePeriod": { # A message that represents a time period. # Required. `TimePeriod` representation of the promotion's 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 the promotion.
        "A String",
      ],
      "targetCountry": "A String", # Required. The target country used as part of the unique identifier. Can be `AU`, `CA`, `DE`, `FR`, `GB`, `IN` or `US`.
    }

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

    Returns:
      An object of the form:

        { # 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. `en` content language is available for all target countries. `fr` content language is available for `CA` and `FR` target countries, and `de` content language is available for `DE` target country.
      "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 `offerType` 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 has 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", # Required. 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. # Cost cap for 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. Deprecated. Use `promotion_display_time_period` instead.
      "promotionDisplayTimePeriod": { # A message that represents a time period. # `TimePeriod` representation of the promotion's display dates.
        "endTime": "A String", # The ending timestamp.
        "startTime": "A String", # The starting timestamp.
      },
      "promotionEffectiveDates": "A String", # String representation of the promotion effective dates. Deprecated. Use `promotion_effective_time_period` instead.
      "promotionEffectiveTimePeriod": { # A message that represents a time period. # Required. `TimePeriod` representation of the promotion's 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 the promotion.
        "A String",
      ],
      "targetCountry": "A String", # Required. The target country used as part of the unique identifier. Can be `AU`, `CA`, `DE`, `FR`, `GB`, `IN` or `US`.
    }

`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:

        { # 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. `en` content language is available for all target countries. `fr` content language is available for `CA` and `FR` target countries, and `de` content language is available for `DE` target country.
      "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 `offerType` 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 has 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", # Required. 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. # Cost cap for 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. Deprecated. Use `promotion_display_time_period` instead.
      "promotionDisplayTimePeriod": { # A message that represents a time period. # `TimePeriod` representation of the promotion's display dates.
        "endTime": "A String", # The ending timestamp.
        "startTime": "A String", # The starting timestamp.
      },
      "promotionEffectiveDates": "A String", # String representation of the promotion effective dates. Deprecated. Use `promotion_effective_time_period` instead.
      "promotionEffectiveTimePeriod": { # A message that represents a time period. # Required. `TimePeriod` representation of the promotion's 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 the promotion.
        "A String",
      ],
      "targetCountry": "A String", # Required. The target country used as part of the unique identifier. Can be `AU`, `CA`, `DE`, `FR`, `GB`, `IN` or `US`.
    }