# Content API for Shopping . orders

## Instance Methods

Marks an order as acknowledged.

Sandbox only. Moves a test order from state "inProgress" to state "pendingShipment".

Cancels all line items in an order, making a full refund.

Cancels a line item, making a full refund.

Sandbox only. Cancels a test order for customer-initiated cancellation.

Sandbox only. Creates a test order.

Sandbox only. Creates a test return.

Retrieves an order from your Merchant Center account.

Retrieves an order using merchant order ID.

Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox.

Notifies that item return and refund was handled directly by merchant outside of Google payments processing (e.g. cash refund done in store).

Lists the orders in your Merchant Center account.

Retrieves the next page of results.

Rejects return on an line item.

Returns and refunds a line item. Note that this method can only be called on fully shipped orders.

Sets (or overrides if it already exists) merchant provided annotations in the form of key-value pairs. A common use case would be to supply us with additional structured information about a line item that cannot be provided via other methods. Submitted key-value pairs can be retrieved as part of the orders resource.

Marks line item(s) as shipped.

Updates ship by and delivery by dates for a line item.

Updates the merchant order ID for a given order.

Updates a shipment's status, carrier, and/or tracking ID.

### Method Details

`acknowledge(merchantId, orderId, body)`

    Marks an order as acknowledged.

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      orderId: string, The ID of the order. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "operationId": "A String", # The ID of the operation. Unique across all operations for a given order.
      }

    Returns:
      An object of the form:

        {
        "kind": "content#ordersAcknowledgeResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersAcknowledgeResponse".
        "executionStatus": "A String", # The status of the execution.
      }

`advancetestorder(merchantId, orderId)`

    Sandbox only. Moves a test order from state "inProgress" to state "pendingShipment".

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      orderId: string, The ID of the test order to modify. (required)

    Returns:
      An object of the form:

        {
        "kind": "content#ordersAdvanceTestOrderResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersAdvanceTestOrderResponse".
      }

`cancel(merchantId, orderId, body)`

    Cancels all line items in an order, making a full refund.

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      orderId: string, The ID of the order to cancel. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "reason": "A String", # The reason for the cancellation.
        "reasonText": "A String", # The explanation of the reason.
        "operationId": "A String", # The ID of the operation. Unique across all operations for a given order.
      }

    Returns:
      An object of the form:

        {
        "kind": "content#ordersCancelResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersCancelResponse".
        "executionStatus": "A String", # The status of the execution.
      }

`cancellineitem(merchantId, orderId, body)`

    Cancels a line item, making a full refund.

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      orderId: string, The ID of the order. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "operationId": "A String", # The ID of the operation. Unique across all operations for a given order.
        "reason": "A String", # The reason for the cancellation.
        "reasonText": "A String", # The explanation of the reason.
        "lineItemId": "A String", # The ID of the line item to cancel. Either lineItemId or productId is required.
        "productId": "A String", # The ID of the product to cancel. This is the REST ID used in the products service. Either lineItemId or productId is required.
        "quantity": 42, # The quantity to cancel.
      }

    Returns:
      An object of the form:

        {
        "kind": "content#ordersCancelLineItemResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersCancelLineItemResponse".
        "executionStatus": "A String", # The status of the execution.
      }

`canceltestorderbycustomer(merchantId, orderId, body)`

    Sandbox only. Cancels a test order for customer-initiated cancellation.

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      orderId: string, The ID of the test order to cancel. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "reason": "A String", # The reason for the cancellation.
      }

    Returns:
      An object of the form:

        {
        "kind": "content#ordersCancelTestOrderByCustomerResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersCancelTestOrderByCustomerResponse".
      }

`createtestorder(merchantId, body)`

    Sandbox only. Creates a test order.

    Args:
      merchantId: string, The ID of the account that should manage the order. This cannot be a multi-client account. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "country": "A String", # The  CLDR territory code of the country of the test order to create. Affects the currency and addresses of orders created via template_name, or the addresses of orders created via test_order.
            #
            # Acceptable values are:
            # - "US"
            # - "FR"  Defaults to US.
        "testOrder": { # The test order to create.
          "promotions": [ # Promotions associated with the order.
            {
              "shortTitle": "A String", # A short title of the promotion to be shown on the checkout page.
              "title": "A String", # The title of the promotion.
              "priceValue": { # Estimated discount applied to price. Amount is pre-tax or post-tax depending on location of order.
                "currency": "A String", # The currency of the price.
                "value": "A String", # The price represented as a number.
              },
              "taxValue": { # Estimated discount applied to tax (if allowed by law).
                "currency": "A String", # The currency of the price.
                "value": "A String", # The price represented as a number.
              },
              "merchantPromotionId": "A String", # This field is used to identify promotions within merchants' own systems.
              "subtype": "A String", # The category of the promotion.
              "appliedItems": [ # Items which this promotion have been applied to.
                {
                  "quantity": 42, # The quantity of the associated product.
                  "lineItemId": "A String",
                  "productId": "A String",
                },
              ],
              "applicableItems": [ # Items which this promotion may be applied to. If empty, there are no restrictions on applicable items and quantity.
                {
                  "quantity": 42, # The quantity of the associated product.
                  "lineItemId": "A String",
                  "productId": "A String",
                },
              ],
              "type": "A String", # The scope of the promotion.
              "funder": "A String", # The party funding the promotion.
            },
          ],
          "predefinedEmail": "A String", # Email address of the customer.
          "kind": "content#testOrder", # Identifies what kind of resource this is. Value: the fixed string "content#testOrder".
          "notificationMode": "A String", # Determines if test order must be pulled by merchant or pushed to merchant via push integration.
          "predefinedDeliveryAddress": "A String", # Identifier of one of the predefined delivery addresses for the delivery.
          "shippingCost": { # The price of shipping for all items. Shipping tax is automatically calculated for MFL orders. For non-MFL orders, tax settings from Merchant Center are applied. Note that shipping is not taxed in certain states.
            "currency": "A String", # The currency of the price.
            "value": "A String", # The price represented as a number.
          },
          "shippingOption": "A String", # The requested shipping option.
          "enableOrderinvoices": True or False, # Whether the orderinvoices service should support this order.
          "lineItems": [ # Line items that are ordered. At least one line item must be provided.
            {
              "returnInfo": { # Details of the return policy for the line item.
                "policyUrl": "A String", # URL of the item return policy.
                "isReturnable": True or False, # Whether the item is returnable.
                "daysToReturn": 42, # How many days later the item can be returned.
              },
              "product": { # Product data from the time of the order placement.
                "targetCountry": "A String", # The CLDR territory code of the target country of the product.
                "contentLanguage": "A String", # The two-letter ISO 639-1 language code for the item.
                "title": "A String", # The title of the product.
                "mpn": "A String", # Manufacturer Part Number (MPN) of the item. Optional.
                "variantAttributes": [ # Variant attributes for the item. Optional.
                  {
                    "dimension": "A String", # The dimension of the variant.
                    "value": "A String", # The value for the dimension.
                  },
                ],
                "brand": "A String", # Brand of the item.
                "itemGroupId": "A String", # Shared identifier for all variants of the same product. Optional.
                "offerId": "A String", # An identifier of the item.
                "imageLink": "A String", # URL of an image of the item.
                "gtin": "A String", # Global Trade Item Number (GTIN) of the item. Optional.
                "fees": [ # Fees for the item. Optional.
                  {
                    "amount": { # Amount of the fee.
                      "currency": "A String", # The currency of the price.
                      "value": "A String", # The price represented as a number.
                    },
                    "name": "A String", # Name of the fee.
                  },
                ],
                "price": { # The price for the product. Tax is automatically calculated for MFL orders. For non-MFL orders, tax settings from Merchant Center are applied.
                  "currency": "A String", # The currency of the price.
                  "value": "A String", # The price represented as a number.
                },
                "condition": "A String", # Condition or state of the item.
              },
              "quantityOrdered": 42, # Number of items ordered.
              "shippingDetails": { # Details of the requested shipping for the line item.
                "deliverByDate": "A String", # The delivery by date, in ISO 8601 format.
                "method": { # Details of the shipping method.
                  "minDaysInTransit": 42, # Minimum transit time.
                  "carrier": "A String", # The carrier for the shipping. Optional. See shipments[].carrier for a list of acceptable values.
                  "methodName": "A String", # The name of the shipping method.
                  "maxDaysInTransit": 42, # Maximum transit time.
                },
                "shipByDate": "A String", # The ship by date, in ISO 8601 format.
              },
            },
          ],
          "predefinedBillingAddress": "A String", # The billing address.
        },
        "templateName": "A String", # The test order template to use. Specify as an alternative to testOrder as a shortcut for retrieving a template and then creating an order using that template.
      }

    Returns:
      An object of the form:

        {
        "orderId": "A String", # The ID of the newly created test order.
        "kind": "content#ordersCreateTestOrderResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersCreateTestOrderResponse".
      }

`createtestreturn(merchantId, orderId, body)`

    Sandbox only. Creates a test return.

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      orderId: string, The ID of the order. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "items": [ # Returned items.
          {
            "lineItemId": "A String", # The ID of the line item to return.
            "quantity": 42, # Quantity that is returned.
          },
        ],
      }

    Returns:
      An object of the form:

        {
        "returnId": "A String", # The ID of the newly created test order return.
        "kind": "content#ordersCreateTestReturnResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersCreateTestReturnResponse".
      }

`get(merchantId, orderId)`

    Retrieves an order from your Merchant Center account.

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      orderId: string, The ID of the order. (required)

    Returns:
      An object of the form:

        { # Order. All methods require the order manager role.
        "customer": { # The details of the customer who placed the order.
          "fullName": "A String", # Full name of the customer.
          "marketingRightsInfo": { # Customer's marketing preferences. Contains the marketing opt-in information that is current at the time that the merchant call. User preference selections can change from one order to the next so preferences must be checked with every order.
            "explicitMarketingPreference": "A String", # Last known customer selection regarding marketing preferences. In certain cases this selection might not be known, so this field would be empty. If a customer selected granted in their most recent order, they can be subscribed to marketing emails. Customers who have chosen denied must not be subscribed, or must be unsubscribed if already opted-in.
            "lastUpdatedTimestamp": "A String", # Timestamp when last time marketing preference was updated. Could be empty, if user wasn't offered a selection yet.
            "marketingEmailAddress": "A String", # Email address that can be used for marketing purposes. The field may be empty even if explicitMarketingPreference is 'granted'. This happens when retrieving an old order from the customer who deleted their account.
          },
        },
        "promotions": [ # Promotions associated with the order.
          {
            "shortTitle": "A String", # A short title of the promotion to be shown on the checkout page.
            "title": "A String", # The title of the promotion.
            "priceValue": { # Estimated discount applied to price. Amount is pre-tax or post-tax depending on location of order.
              "currency": "A String", # The currency of the price.
              "value": "A String", # The price represented as a number.
            },
            "taxValue": { # Estimated discount applied to tax (if allowed by law).
              "currency": "A String", # The currency of the price.
              "value": "A String", # The price represented as a number.
            },
            "merchantPromotionId": "A String", # This field is used to identify promotions within merchants' own systems.
            "subtype": "A String", # The category of the promotion.
            "appliedItems": [ # Items which this promotion have been applied to.
              {
                "quantity": 42, # The quantity of the associated product.
                "lineItemId": "A String",
                "productId": "A String",
              },
            ],
            "applicableItems": [ # Items which this promotion may be applied to. If empty, there are no restrictions on applicable items and quantity.
              {
                "quantity": 42, # The quantity of the associated product.
                "lineItemId": "A String",
                "productId": "A String",
              },
            ],
            "type": "A String", # The scope of the promotion.
            "funder": "A String", # The party funding the promotion.
          },
        ],
        "kind": "content#order", # Identifies what kind of resource this is. Value: the fixed string "content#order".
        "shippingCostTax": { # The tax for the total shipping cost.
          "currency": "A String", # The currency of the price.
          "value": "A String", # The price represented as a number.
        },
        "shipments": [ # Shipments of the order.
          {
            "status": "A String", # The status of the shipment.
            "creationDate": "A String", # Date on which the shipment has been created, in ISO 8601 format.
            "carrier": "A String", # The carrier handling the shipment.
                #
                # Acceptable values for US are:
                # - "gsx"
                # - "ups"
                # - "usps"
                # - "fedex"
                # - "dhl"
                # - "ecourier"
                # - "cxt"
                # - "google"
                # - "ontrac"
                # - "emsy"
                # - "ont"
                # - "deliv"
                # - "dynamex"
                # - "lasership"
                # - "mpx"
                # - "uds"
                # - "efw"
                #
                # Acceptable values for FR are:
                # - "colissimo"
                # - "chronopost"
                # - "gls"
                # - "dpd"
                # - "bpost"
            "trackingId": "A String", # The tracking ID for the shipment.
            "deliveryDate": "A String", # Date on which the shipment has been delivered, in ISO 8601 format. Present only if status is delivered
            "lineItems": [ # The line items that are shipped.
              {
                "quantity": 42, # The quantity that is shipped.
                "lineItemId": "A String", # The ID of the line item that is shipped. Either lineItemId or productId is required.
                "productId": "A String", # The ID of the product to ship. This is the REST ID used in the products service. Either lineItemId or productId is required.
              },
            ],
            "id": "A String", # The ID of the shipment.
          },
        ],
        "refunds": [ # Refunds for the order.
          {
            "amount": { # The amount that is refunded.
              "currency": "A String", # The currency of the price.
              "value": "A String", # The price represented as a number.
            },
            "creationDate": "A String", # Date on which the item has been created, in ISO 8601 format.
            "reason": "A String", # The reason for the refund.
            "actor": "A String", # The actor that created the refund.
            "reasonText": "A String", # The explanation of the reason.
          },
        ],
        "taxCollector": "A String", # The party responsible for collecting and remitting taxes.
        "acknowledged": True or False, # Whether the order was acknowledged.
        "paymentStatus": "A String", # The status of the payment.
        "merchantId": "A String",
        "merchantOrderId": "A String", # Merchant-provided ID of the order.
        "status": "A String", # The status of the order.
        "netTaxAmount": { # The net amount for the order (tax part). Note that in certain cases due to taxable base adjustment netTaxAmount might not match to a sum of tax field across all lineItems and refunds.
          "currency": "A String", # The currency of the price.
          "value": "A String", # The price represented as a number.
        },
        "billingAddress": { # The billing address.
          "locality": "A String", # City, town or commune. May also include dependent localities or sublocalities (e.g. neighborhoods or suburbs).
          "country": "A String", # CLDR country code (e.g. "US").
          "fullAddress": [ # Strings representing the lines of the printed label for mailing the order, for example:
              # John Smith
              # 1600 Amphitheatre Parkway
              # Mountain View, CA, 94043
              # United States
            "A String",
          ],
          "streetAddress": [ # Street-level part of the address.
            "A String",
          ],
          "postalCode": "A String", # Postal Code or ZIP (e.g. "94043").
          "recipientName": "A String", # Name of the recipient.
          "isPostOfficeBox": True or False, # Whether the address is a post office box.
          "region": "A String", # Top-level administrative subdivision of the country. For example, a state like California ("CA") or a province like Quebec ("QC").
        },
        "netPriceAmount": { # The net amount for the order (price part). For example, if an order was originally for $100 and a refund was issued for $20, the net amount will be $80.
          "currency": "A String", # The currency of the price.
          "value": "A String", # The price represented as a number.
        },
        "placedDate": "A String", # The date when the order was placed, in ISO 8601 format.
        "lineItems": [ # Line items that are ordered.
          {
            "product": { # Product data as seen by customer from the time of the order placement. Note that certain attributes values (e.g. title or gtin) might be reformatted and no longer match values submitted via product feed.
              "targetCountry": "A String", # The CLDR territory code of the target country of the product.
              "shownImage": "A String", # URL to the cached image shown to the user when order was placed.
              "contentLanguage": "A String", # The two-letter ISO 639-1 language code for the item.
              "title": "A String", # The title of the product.
              "mpn": "A String", # Manufacturer Part Number (MPN) of the item.
              "variantAttributes": [ # Variant attributes for the item. These are dimensions of the product, such as color, gender, material, pattern, and size. You can find a comprehensive list of variant attributes here.
                {
                  "dimension": "A String", # The dimension of the variant.
                  "value": "A String", # The value for the dimension.
                },
              ],
              "brand": "A String", # Brand of the item.
              "itemGroupId": "A String", # Shared identifier for all variants of the same product.
              "offerId": "A String", # An identifier of the item.
              "price": { # Price of the item.
                "currency": "A String", # The currency of the price.
                "value": "A String", # The price represented as a number.
              },
              "imageLink": "A String", # URL of an image of the item.
              "gtin": "A String", # Global Trade Item Number (GTIN) of the item.
              "fees": [ # Associated fees at order creation time.
                {
                  "amount": { # Amount of the fee.
                    "currency": "A String", # The currency of the price.
                    "value": "A String", # The price represented as a number.
                  },
                  "name": "A String", # Name of the fee.
                },
              ],
              "id": "A String", # The REST ID of the product.
              "condition": "A String", # Condition or state of the item.
            },
            "quantityPending": 42, # Number of items pending.
            "quantityDelivered": 42, # Number of items delivered.
            "returnInfo": { # Details of the return policy for the line item.
              "policyUrl": "A String", # URL of the item return policy.
              "isReturnable": True or False, # Whether the item is returnable.
              "daysToReturn": 42, # How many days later the item can be returned.
            },
            "quantityOrdered": 42, # Number of items ordered.
            "price": { # Total price for the line item. For example, if two items for $10 are purchased, the total price will be $20.
              "currency": "A String", # The currency of the price.
              "value": "A String", # The price represented as a number.
            },
            "adjustments": [ # Price and tax adjustments applied on the line item.
              {
                "type": "A String", # Type of this adjustment.
                "priceAdjustment": { # Adjustment for total price of the line item.
                  "currency": "A String", # The currency of the price.
                  "value": "A String", # The price represented as a number.
                },
                "taxAdjustment": { # Adjustment for total tax of the line item.
                  "currency": "A String", # The currency of the price.
                  "value": "A String", # The price represented as a number.
                },
              },
            ],
            "tax": { # Total tax amount for the line item. For example, if two items are purchased, and each have a cost tax of $2, the total tax amount will be $4.
              "currency": "A String", # The currency of the price.
              "value": "A String", # The price represented as a number.
            },
            "cancellations": [ # Cancellations of the line item.
              {
                "reason": "A String", # The reason for the cancellation. Orders that are cancelled with a noInventory reason will lead to the removal of the product from Shopping Actions until you make an update to that product. This will not affect your Shopping ads.
                "creationDate": "A String", # Date on which the cancellation has been created, in ISO 8601 format.
                "reasonText": "A String", # The explanation of the reason.
                "actor": "A String", # The actor that created the cancellation.
                "quantity": 42, # The quantity that was canceled.
              },
            ],
            "quantityCanceled": 42, # Number of items canceled.
            "annotations": [ # Annotations that are attached to the line item.
              {
                "value": "A String", # Value for additional merchant provided (as key-value pairs) annotation about the line item.
                "key": "A String", # Key for additional merchant provided (as key-value pairs) annotation about the line item.
              },
            ],
            "returns": [ # Returns of the line item.
              {
                "reason": "A String", # The reason for the return.
                "creationDate": "A String", # Date on which the item has been created, in ISO 8601 format.
                "reasonText": "A String", # The explanation of the reason.
                "actor": "A String", # The actor that created the refund.
                "quantity": 42, # Quantity that is returned.
              },
            ],
            "quantityShipped": 42, # Number of items shipped.
            "quantityReturned": 42, # Number of items returned.
            "id": "A String", # The ID of the line item.
            "shippingDetails": { # Details of the requested shipping for the line item.
              "deliverByDate": "A String", # The delivery by date, in ISO 8601 format.
              "method": { # Details of the shipping method.
                "minDaysInTransit": 42, # Minimum transit time.
                "carrier": "A String", # The carrier for the shipping. Optional. See shipments[].carrier for a list of acceptable values.
                "methodName": "A String", # The name of the shipping method.
                "maxDaysInTransit": 42, # Maximum transit time.
              },
              "shipByDate": "A String", # The ship by date, in ISO 8601 format.
            },
          },
        ],
        "shippingCost": { # The total cost of shipping for all items.
          "currency": "A String", # The currency of the price.
          "value": "A String", # The price represented as a number.
        },
        "id": "A String", # The REST ID of the order. Globally unique.
        "deliveryDetails": { # Delivery details for shipments.
          "phoneNumber": "A String", # The phone number of the person receiving the delivery.
          "address": { # The delivery address
            "locality": "A String", # City, town or commune. May also include dependent localities or sublocalities (e.g. neighborhoods or suburbs).
            "country": "A String", # CLDR country code (e.g. "US").
            "fullAddress": [ # Strings representing the lines of the printed label for mailing the order, for example:
                # John Smith
                # 1600 Amphitheatre Parkway
                # Mountain View, CA, 94043
                # United States
              "A String",
            ],
            "streetAddress": [ # Street-level part of the address.
              "A String",
            ],
            "postalCode": "A String", # Postal Code or ZIP (e.g. "94043").
            "recipientName": "A String", # Name of the recipient.
            "isPostOfficeBox": True or False, # Whether the address is a post office box.
            "region": "A String", # Top-level administrative subdivision of the country. For example, a state like California ("CA") or a province like Quebec ("QC").
          },
        },
      }

`getbymerchantorderid(merchantId, merchantOrderId)`

    Retrieves an order using merchant order ID.

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      merchantOrderId: string, The merchant order ID to be looked for. (required)

    Returns:
      An object of the form:

        {
        "kind": "content#ordersGetByMerchantOrderIdResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersGetByMerchantOrderIdResponse".
        "order": { # Order. All methods require the order manager role. # The requested order.
          "customer": { # The details of the customer who placed the order.
            "fullName": "A String", # Full name of the customer.
            "marketingRightsInfo": { # Customer's marketing preferences. Contains the marketing opt-in information that is current at the time that the merchant call. User preference selections can change from one order to the next so preferences must be checked with every order.
              "explicitMarketingPreference": "A String", # Last known customer selection regarding marketing preferences. In certain cases this selection might not be known, so this field would be empty. If a customer selected granted in their most recent order, they can be subscribed to marketing emails. Customers who have chosen denied must not be subscribed, or must be unsubscribed if already opted-in.
              "lastUpdatedTimestamp": "A String", # Timestamp when last time marketing preference was updated. Could be empty, if user wasn't offered a selection yet.
              "marketingEmailAddress": "A String", # Email address that can be used for marketing purposes. The field may be empty even if explicitMarketingPreference is 'granted'. This happens when retrieving an old order from the customer who deleted their account.
            },
          },
          "promotions": [ # Promotions associated with the order.
            {
              "shortTitle": "A String", # A short title of the promotion to be shown on the checkout page.
              "title": "A String", # The title of the promotion.
              "priceValue": { # Estimated discount applied to price. Amount is pre-tax or post-tax depending on location of order.
                "currency": "A String", # The currency of the price.
                "value": "A String", # The price represented as a number.
              },
              "taxValue": { # Estimated discount applied to tax (if allowed by law).
                "currency": "A String", # The currency of the price.
                "value": "A String", # The price represented as a number.
              },
              "merchantPromotionId": "A String", # This field is used to identify promotions within merchants' own systems.
              "subtype": "A String", # The category of the promotion.
              "appliedItems": [ # Items which this promotion have been applied to.
                {
                  "quantity": 42, # The quantity of the associated product.
                  "lineItemId": "A String",
                  "productId": "A String",
                },
              ],
              "applicableItems": [ # Items which this promotion may be applied to. If empty, there are no restrictions on applicable items and quantity.
                {
                  "quantity": 42, # The quantity of the associated product.
                  "lineItemId": "A String",
                  "productId": "A String",
                },
              ],
              "type": "A String", # The scope of the promotion.
              "funder": "A String", # The party funding the promotion.
            },
          ],
          "kind": "content#order", # Identifies what kind of resource this is. Value: the fixed string "content#order".
          "shippingCostTax": { # The tax for the total shipping cost.
            "currency": "A String", # The currency of the price.
            "value": "A String", # The price represented as a number.
          },
          "shipments": [ # Shipments of the order.
            {
              "status": "A String", # The status of the shipment.
              "creationDate": "A String", # Date on which the shipment has been created, in ISO 8601 format.
              "carrier": "A String", # The carrier handling the shipment.
                  #
                  # Acceptable values for US are:
                  # - "gsx"
                  # - "ups"
                  # - "usps"
                  # - "fedex"
                  # - "dhl"
                  # - "ecourier"
                  # - "cxt"
                  # - "google"
                  # - "ontrac"
                  # - "emsy"
                  # - "ont"
                  # - "deliv"
                  # - "dynamex"
                  # - "lasership"
                  # - "mpx"
                  # - "uds"
                  # - "efw"
                  #
                  # Acceptable values for FR are:
                  # - "colissimo"
                  # - "chronopost"
                  # - "gls"
                  # - "dpd"
                  # - "bpost"
              "trackingId": "A String", # The tracking ID for the shipment.
              "deliveryDate": "A String", # Date on which the shipment has been delivered, in ISO 8601 format. Present only if status is delivered
              "lineItems": [ # The line items that are shipped.
                {
                  "quantity": 42, # The quantity that is shipped.
                  "lineItemId": "A String", # The ID of the line item that is shipped. Either lineItemId or productId is required.
                  "productId": "A String", # The ID of the product to ship. This is the REST ID used in the products service. Either lineItemId or productId is required.
                },
              ],
              "id": "A String", # The ID of the shipment.
            },
          ],
          "refunds": [ # Refunds for the order.
            {
              "amount": { # The amount that is refunded.
                "currency": "A String", # The currency of the price.
                "value": "A String", # The price represented as a number.
              },
              "creationDate": "A String", # Date on which the item has been created, in ISO 8601 format.
              "reason": "A String", # The reason for the refund.
              "actor": "A String", # The actor that created the refund.
              "reasonText": "A String", # The explanation of the reason.
            },
          ],
          "taxCollector": "A String", # The party responsible for collecting and remitting taxes.
          "acknowledged": True or False, # Whether the order was acknowledged.
          "paymentStatus": "A String", # The status of the payment.
          "merchantId": "A String",
          "merchantOrderId": "A String", # Merchant-provided ID of the order.
          "status": "A String", # The status of the order.
          "netTaxAmount": { # The net amount for the order (tax part). Note that in certain cases due to taxable base adjustment netTaxAmount might not match to a sum of tax field across all lineItems and refunds.
            "currency": "A String", # The currency of the price.
            "value": "A String", # The price represented as a number.
          },
          "billingAddress": { # The billing address.
            "locality": "A String", # City, town or commune. May also include dependent localities or sublocalities (e.g. neighborhoods or suburbs).
            "country": "A String", # CLDR country code (e.g. "US").
            "fullAddress": [ # Strings representing the lines of the printed label for mailing the order, for example:
                # John Smith
                # 1600 Amphitheatre Parkway
                # Mountain View, CA, 94043
                # United States
              "A String",
            ],
            "streetAddress": [ # Street-level part of the address.
              "A String",
            ],
            "postalCode": "A String", # Postal Code or ZIP (e.g. "94043").
            "recipientName": "A String", # Name of the recipient.
            "isPostOfficeBox": True or False, # Whether the address is a post office box.
            "region": "A String", # Top-level administrative subdivision of the country. For example, a state like California ("CA") or a province like Quebec ("QC").
          },
          "netPriceAmount": { # The net amount for the order (price part). For example, if an order was originally for $100 and a refund was issued for $20, the net amount will be $80.
            "currency": "A String", # The currency of the price.
            "value": "A String", # The price represented as a number.
          },
          "placedDate": "A String", # The date when the order was placed, in ISO 8601 format.
          "lineItems": [ # Line items that are ordered.
            {
              "product": { # Product data as seen by customer from the time of the order placement. Note that certain attributes values (e.g. title or gtin) might be reformatted and no longer match values submitted via product feed.
                "targetCountry": "A String", # The CLDR territory code of the target country of the product.
                "shownImage": "A String", # URL to the cached image shown to the user when order was placed.
                "contentLanguage": "A String", # The two-letter ISO 639-1 language code for the item.
                "title": "A String", # The title of the product.
                "mpn": "A String", # Manufacturer Part Number (MPN) of the item.
                "variantAttributes": [ # Variant attributes for the item. These are dimensions of the product, such as color, gender, material, pattern, and size. You can find a comprehensive list of variant attributes here.
                  {
                    "dimension": "A String", # The dimension of the variant.
                    "value": "A String", # The value for the dimension.
                  },
                ],
                "brand": "A String", # Brand of the item.
                "itemGroupId": "A String", # Shared identifier for all variants of the same product.
                "offerId": "A String", # An identifier of the item.
                "price": { # Price of the item.
                  "currency": "A String", # The currency of the price.
                  "value": "A String", # The price represented as a number.
                },
                "imageLink": "A String", # URL of an image of the item.
                "gtin": "A String", # Global Trade Item Number (GTIN) of the item.
                "fees": [ # Associated fees at order creation time.
                  {
                    "amount": { # Amount of the fee.
                      "currency": "A String", # The currency of the price.
                      "value": "A String", # The price represented as a number.
                    },
                    "name": "A String", # Name of the fee.
                  },
                ],
                "id": "A String", # The REST ID of the product.
                "condition": "A String", # Condition or state of the item.
              },
              "quantityPending": 42, # Number of items pending.
              "quantityDelivered": 42, # Number of items delivered.
              "returnInfo": { # Details of the return policy for the line item.
                "policyUrl": "A String", # URL of the item return policy.
                "isReturnable": True or False, # Whether the item is returnable.
                "daysToReturn": 42, # How many days later the item can be returned.
              },
              "quantityOrdered": 42, # Number of items ordered.
              "price": { # Total price for the line item. For example, if two items for $10 are purchased, the total price will be $20.
                "currency": "A String", # The currency of the price.
                "value": "A String", # The price represented as a number.
              },
              "adjustments": [ # Price and tax adjustments applied on the line item.
                {
                  "type": "A String", # Type of this adjustment.
                  "priceAdjustment": { # Adjustment for total price of the line item.
                    "currency": "A String", # The currency of the price.
                    "value": "A String", # The price represented as a number.
                  },
                  "taxAdjustment": { # Adjustment for total tax of the line item.
                    "currency": "A String", # The currency of the price.
                    "value": "A String", # The price represented as a number.
                  },
                },
              ],
              "tax": { # Total tax amount for the line item. For example, if two items are purchased, and each have a cost tax of $2, the total tax amount will be $4.
                "currency": "A String", # The currency of the price.
                "value": "A String", # The price represented as a number.
              },
              "cancellations": [ # Cancellations of the line item.
                {
                  "reason": "A String", # The reason for the cancellation. Orders that are cancelled with a noInventory reason will lead to the removal of the product from Shopping Actions until you make an update to that product. This will not affect your Shopping ads.
                  "creationDate": "A String", # Date on which the cancellation has been created, in ISO 8601 format.
                  "reasonText": "A String", # The explanation of the reason.
                  "actor": "A String", # The actor that created the cancellation.
                  "quantity": 42, # The quantity that was canceled.
                },
              ],
              "quantityCanceled": 42, # Number of items canceled.
              "annotations": [ # Annotations that are attached to the line item.
                {
                  "value": "A String", # Value for additional merchant provided (as key-value pairs) annotation about the line item.
                  "key": "A String", # Key for additional merchant provided (as key-value pairs) annotation about the line item.
                },
              ],
              "returns": [ # Returns of the line item.
                {
                  "reason": "A String", # The reason for the return.
                  "creationDate": "A String", # Date on which the item has been created, in ISO 8601 format.
                  "reasonText": "A String", # The explanation of the reason.
                  "actor": "A String", # The actor that created the refund.
                  "quantity": 42, # Quantity that is returned.
                },
              ],
              "quantityShipped": 42, # Number of items shipped.
              "quantityReturned": 42, # Number of items returned.
              "id": "A String", # The ID of the line item.
              "shippingDetails": { # Details of the requested shipping for the line item.
                "deliverByDate": "A String", # The delivery by date, in ISO 8601 format.
                "method": { # Details of the shipping method.
                  "minDaysInTransit": 42, # Minimum transit time.
                  "carrier": "A String", # The carrier for the shipping. Optional. See shipments[].carrier for a list of acceptable values.
                  "methodName": "A String", # The name of the shipping method.
                  "maxDaysInTransit": 42, # Maximum transit time.
                },
                "shipByDate": "A String", # The ship by date, in ISO 8601 format.
              },
            },
          ],
          "shippingCost": { # The total cost of shipping for all items.
            "currency": "A String", # The currency of the price.
            "value": "A String", # The price represented as a number.
          },
          "id": "A String", # The REST ID of the order. Globally unique.
          "deliveryDetails": { # Delivery details for shipments.
            "phoneNumber": "A String", # The phone number of the person receiving the delivery.
            "address": { # The delivery address
              "locality": "A String", # City, town or commune. May also include dependent localities or sublocalities (e.g. neighborhoods or suburbs).
              "country": "A String", # CLDR country code (e.g. "US").
              "fullAddress": [ # Strings representing the lines of the printed label for mailing the order, for example:
                  # John Smith
                  # 1600 Amphitheatre Parkway
                  # Mountain View, CA, 94043
                  # United States
                "A String",
              ],
              "streetAddress": [ # Street-level part of the address.
                "A String",
              ],
              "postalCode": "A String", # Postal Code or ZIP (e.g. "94043").
              "recipientName": "A String", # Name of the recipient.
              "isPostOfficeBox": True or False, # Whether the address is a post office box.
              "region": "A String", # Top-level administrative subdivision of the country. For example, a state like California ("CA") or a province like Quebec ("QC").
            },
          },
        },
      }

`gettestordertemplate(merchantId, templateName, country=None)`

    Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox.

    Args:
      merchantId: string, The ID of the account that should manage the order. This cannot be a multi-client account. (required)
      templateName: string, The name of the template to retrieve. (required)
        Allowed values
          template1 -
          template1a -
          template1b -
          template2 -
      country: string, The country of the template to retrieve. Defaults to US.

    Returns:
      An object of the form:

        {
        "kind": "content#ordersGetTestOrderTemplateResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersGetTestOrderTemplateResponse".
        "template": { # The requested test order template.
          "promotions": [ # Promotions associated with the order.
            {
              "shortTitle": "A String", # A short title of the promotion to be shown on the checkout page.
              "title": "A String", # The title of the promotion.
              "priceValue": { # Estimated discount applied to price. Amount is pre-tax or post-tax depending on location of order.
                "currency": "A String", # The currency of the price.
                "value": "A String", # The price represented as a number.
              },
              "taxValue": { # Estimated discount applied to tax (if allowed by law).
                "currency": "A String", # The currency of the price.
                "value": "A String", # The price represented as a number.
              },
              "merchantPromotionId": "A String", # This field is used to identify promotions within merchants' own systems.
              "subtype": "A String", # The category of the promotion.
              "appliedItems": [ # Items which this promotion have been applied to.
                {
                  "quantity": 42, # The quantity of the associated product.
                  "lineItemId": "A String",
                  "productId": "A String",
                },
              ],
              "applicableItems": [ # Items which this promotion may be applied to. If empty, there are no restrictions on applicable items and quantity.
                {
                  "quantity": 42, # The quantity of the associated product.
                  "lineItemId": "A String",
                  "productId": "A String",
                },
              ],
              "type": "A String", # The scope of the promotion.
              "funder": "A String", # The party funding the promotion.
            },
          ],
          "predefinedEmail": "A String", # Email address of the customer.
          "kind": "content#testOrder", # Identifies what kind of resource this is. Value: the fixed string "content#testOrder".
          "notificationMode": "A String", # Determines if test order must be pulled by merchant or pushed to merchant via push integration.
          "predefinedDeliveryAddress": "A String", # Identifier of one of the predefined delivery addresses for the delivery.
          "shippingCost": { # The price of shipping for all items. Shipping tax is automatically calculated for MFL orders. For non-MFL orders, tax settings from Merchant Center are applied. Note that shipping is not taxed in certain states.
            "currency": "A String", # The currency of the price.
            "value": "A String", # The price represented as a number.
          },
          "shippingOption": "A String", # The requested shipping option.
          "enableOrderinvoices": True or False, # Whether the orderinvoices service should support this order.
          "lineItems": [ # Line items that are ordered. At least one line item must be provided.
            {
              "returnInfo": { # Details of the return policy for the line item.
                "policyUrl": "A String", # URL of the item return policy.
                "isReturnable": True or False, # Whether the item is returnable.
                "daysToReturn": 42, # How many days later the item can be returned.
              },
              "product": { # Product data from the time of the order placement.
                "targetCountry": "A String", # The CLDR territory code of the target country of the product.
                "contentLanguage": "A String", # The two-letter ISO 639-1 language code for the item.
                "title": "A String", # The title of the product.
                "mpn": "A String", # Manufacturer Part Number (MPN) of the item. Optional.
                "variantAttributes": [ # Variant attributes for the item. Optional.
                  {
                    "dimension": "A String", # The dimension of the variant.
                    "value": "A String", # The value for the dimension.
                  },
                ],
                "brand": "A String", # Brand of the item.
                "itemGroupId": "A String", # Shared identifier for all variants of the same product. Optional.
                "offerId": "A String", # An identifier of the item.
                "imageLink": "A String", # URL of an image of the item.
                "gtin": "A String", # Global Trade Item Number (GTIN) of the item. Optional.
                "fees": [ # Fees for the item. Optional.
                  {
                    "amount": { # Amount of the fee.
                      "currency": "A String", # The currency of the price.
                      "value": "A String", # The price represented as a number.
                    },
                    "name": "A String", # Name of the fee.
                  },
                ],
                "price": { # The price for the product. Tax is automatically calculated for MFL orders. For non-MFL orders, tax settings from Merchant Center are applied.
                  "currency": "A String", # The currency of the price.
                  "value": "A String", # The price represented as a number.
                },
                "condition": "A String", # Condition or state of the item.
              },
              "quantityOrdered": 42, # Number of items ordered.
              "shippingDetails": { # Details of the requested shipping for the line item.
                "deliverByDate": "A String", # The delivery by date, in ISO 8601 format.
                "method": { # Details of the shipping method.
                  "minDaysInTransit": 42, # Minimum transit time.
                  "carrier": "A String", # The carrier for the shipping. Optional. See shipments[].carrier for a list of acceptable values.
                  "methodName": "A String", # The name of the shipping method.
                  "maxDaysInTransit": 42, # Maximum transit time.
                },
                "shipByDate": "A String", # The ship by date, in ISO 8601 format.
              },
            },
          ],
          "predefinedBillingAddress": "A String", # The billing address.
        },
      }

`instorerefundlineitem(merchantId, orderId, body)`

    Notifies that item return and refund was handled directly by merchant outside of Google payments processing (e.g. cash refund done in store).
    Note: We recommend calling the returnrefundlineitem method to refund in-store returns. We will issue the refund directly to the customer. This helps to prevent possible differences arising between merchant and Google transaction records. We also recommend having the point of sale system communicate with Google to ensure that customers do not receive a double refund by first refunding via Google then via an in-store return.

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      orderId: string, The ID of the order. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "priceAmount": { # The amount to be refunded. This may be pre-tax or post-tax depending on the location of the order. Required.
          "currency": "A String", # The currency of the price.
          "value": "A String", # The price represented as a number.
        },
        "taxAmount": { # The amount of tax to be refunded. Required.
          "currency": "A String", # The currency of the price.
          "value": "A String", # The price represented as a number.
        },
        "operationId": "A String", # The ID of the operation. Unique across all operations for a given order.
        "reason": "A String", # The reason for the return.
        "reasonText": "A String", # The explanation of the reason.
        "lineItemId": "A String", # The ID of the line item to return. Either lineItemId or productId is required.
        "quantity": 42, # The quantity to return and refund.
        "productId": "A String", # The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.
      }

    Returns:
      An object of the form:

        {
        "kind": "content#ordersInStoreRefundLineItemResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersInStoreRefundLineItemResponse".
        "executionStatus": "A String", # The status of the execution.
      }

`list(merchantId, orderBy=None, pageToken=None, placedDateEnd=None, acknowledged=None, maxResults=None, placedDateStart=None, statuses=None)`

    Lists the orders in your Merchant Center account.

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      orderBy: string, Order results by placement date in descending or ascending order.

    Acceptable values are:
    - placedDateAsc
    - placedDateDesc
      pageToken: string, The token returned by the previous request.
      placedDateEnd: string, Obtains orders placed before this date (exclusively), in ISO 8601 format.
      acknowledged: boolean, Obtains orders that match the acknowledgement status. When set to true, obtains orders that have been acknowledged. When false, obtains orders that have not been acknowledged.
    We recommend using this filter set to false, in conjunction with the acknowledge call, such that only un-acknowledged orders are returned.
      maxResults: integer, The maximum number of orders to return in the response, used for paging. The default value is 25 orders per page, and the maximum allowed value is 250 orders per page.
      placedDateStart: string, Obtains orders placed after this date (inclusively), in ISO 8601 format.
      statuses: string, Obtains orders that match any of the specified statuses. Multiple values can be specified with comma separation. Additionally, please note that active is a shortcut for pendingShipment and partiallyShipped, and completed is a shortcut for shipped, partiallyDelivered, delivered, partiallyReturned, returned, and canceled. (repeated)
        Allowed values
          active -
          canceled -
          completed -
          delivered -
          inProgress -
          partiallyDelivered -
          partiallyReturned -
          partiallyShipped -
          pendingShipment -
          returned -
          shipped -

    Returns:
      An object of the form:

        {
        "nextPageToken": "A String", # The token for the retrieval of the next page of orders.
        "kind": "content#ordersListResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersListResponse".
        "resources": [
          { # Order. All methods require the order manager role.
            "customer": { # The details of the customer who placed the order.
              "fullName": "A String", # Full name of the customer.
              "marketingRightsInfo": { # Customer's marketing preferences. Contains the marketing opt-in information that is current at the time that the merchant call. User preference selections can change from one order to the next so preferences must be checked with every order.
                "explicitMarketingPreference": "A String", # Last known customer selection regarding marketing preferences. In certain cases this selection might not be known, so this field would be empty. If a customer selected granted in their most recent order, they can be subscribed to marketing emails. Customers who have chosen denied must not be subscribed, or must be unsubscribed if already opted-in.
                "lastUpdatedTimestamp": "A String", # Timestamp when last time marketing preference was updated. Could be empty, if user wasn't offered a selection yet.
                "marketingEmailAddress": "A String", # Email address that can be used for marketing purposes. The field may be empty even if explicitMarketingPreference is 'granted'. This happens when retrieving an old order from the customer who deleted their account.
              },
            },
            "promotions": [ # Promotions associated with the order.
              {
                "shortTitle": "A String", # A short title of the promotion to be shown on the checkout page.
                "title": "A String", # The title of the promotion.
                "priceValue": { # Estimated discount applied to price. Amount is pre-tax or post-tax depending on location of order.
                  "currency": "A String", # The currency of the price.
                  "value": "A String", # The price represented as a number.
                },
                "taxValue": { # Estimated discount applied to tax (if allowed by law).
                  "currency": "A String", # The currency of the price.
                  "value": "A String", # The price represented as a number.
                },
                "merchantPromotionId": "A String", # This field is used to identify promotions within merchants' own systems.
                "subtype": "A String", # The category of the promotion.
                "appliedItems": [ # Items which this promotion have been applied to.
                  {
                    "quantity": 42, # The quantity of the associated product.
                    "lineItemId": "A String",
                    "productId": "A String",
                  },
                ],
                "applicableItems": [ # Items which this promotion may be applied to. If empty, there are no restrictions on applicable items and quantity.
                  {
                    "quantity": 42, # The quantity of the associated product.
                    "lineItemId": "A String",
                    "productId": "A String",
                  },
                ],
                "type": "A String", # The scope of the promotion.
                "funder": "A String", # The party funding the promotion.
              },
            ],
            "kind": "content#order", # Identifies what kind of resource this is. Value: the fixed string "content#order".
            "shippingCostTax": { # The tax for the total shipping cost.
              "currency": "A String", # The currency of the price.
              "value": "A String", # The price represented as a number.
            },
            "shipments": [ # Shipments of the order.
              {
                "status": "A String", # The status of the shipment.
                "creationDate": "A String", # Date on which the shipment has been created, in ISO 8601 format.
                "carrier": "A String", # The carrier handling the shipment.
                    #
                    # Acceptable values for US are:
                    # - "gsx"
                    # - "ups"
                    # - "usps"
                    # - "fedex"
                    # - "dhl"
                    # - "ecourier"
                    # - "cxt"
                    # - "google"
                    # - "ontrac"
                    # - "emsy"
                    # - "ont"
                    # - "deliv"
                    # - "dynamex"
                    # - "lasership"
                    # - "mpx"
                    # - "uds"
                    # - "efw"
                    #
                    # Acceptable values for FR are:
                    # - "colissimo"
                    # - "chronopost"
                    # - "gls"
                    # - "dpd"
                    # - "bpost"
                "trackingId": "A String", # The tracking ID for the shipment.
                "deliveryDate": "A String", # Date on which the shipment has been delivered, in ISO 8601 format. Present only if status is delivered
                "lineItems": [ # The line items that are shipped.
                  {
                    "quantity": 42, # The quantity that is shipped.
                    "lineItemId": "A String", # The ID of the line item that is shipped. Either lineItemId or productId is required.
                    "productId": "A String", # The ID of the product to ship. This is the REST ID used in the products service. Either lineItemId or productId is required.
                  },
                ],
                "id": "A String", # The ID of the shipment.
              },
            ],
            "refunds": [ # Refunds for the order.
              {
                "amount": { # The amount that is refunded.
                  "currency": "A String", # The currency of the price.
                  "value": "A String", # The price represented as a number.
                },
                "creationDate": "A String", # Date on which the item has been created, in ISO 8601 format.
                "reason": "A String", # The reason for the refund.
                "actor": "A String", # The actor that created the refund.
                "reasonText": "A String", # The explanation of the reason.
              },
            ],
            "taxCollector": "A String", # The party responsible for collecting and remitting taxes.
            "acknowledged": True or False, # Whether the order was acknowledged.
            "paymentStatus": "A String", # The status of the payment.
            "merchantId": "A String",
            "merchantOrderId": "A String", # Merchant-provided ID of the order.
            "status": "A String", # The status of the order.
            "netTaxAmount": { # The net amount for the order (tax part). Note that in certain cases due to taxable base adjustment netTaxAmount might not match to a sum of tax field across all lineItems and refunds.
              "currency": "A String", # The currency of the price.
              "value": "A String", # The price represented as a number.
            },
            "billingAddress": { # The billing address.
              "locality": "A String", # City, town or commune. May also include dependent localities or sublocalities (e.g. neighborhoods or suburbs).
              "country": "A String", # CLDR country code (e.g. "US").
              "fullAddress": [ # Strings representing the lines of the printed label for mailing the order, for example:
                  # John Smith
                  # 1600 Amphitheatre Parkway
                  # Mountain View, CA, 94043
                  # United States
                "A String",
              ],
              "streetAddress": [ # Street-level part of the address.
                "A String",
              ],
              "postalCode": "A String", # Postal Code or ZIP (e.g. "94043").
              "recipientName": "A String", # Name of the recipient.
              "isPostOfficeBox": True or False, # Whether the address is a post office box.
              "region": "A String", # Top-level administrative subdivision of the country. For example, a state like California ("CA") or a province like Quebec ("QC").
            },
            "netPriceAmount": { # The net amount for the order (price part). For example, if an order was originally for $100 and a refund was issued for $20, the net amount will be $80.
              "currency": "A String", # The currency of the price.
              "value": "A String", # The price represented as a number.
            },
            "placedDate": "A String", # The date when the order was placed, in ISO 8601 format.
            "lineItems": [ # Line items that are ordered.
              {
                "product": { # Product data as seen by customer from the time of the order placement. Note that certain attributes values (e.g. title or gtin) might be reformatted and no longer match values submitted via product feed.
                  "targetCountry": "A String", # The CLDR territory code of the target country of the product.
                  "shownImage": "A String", # URL to the cached image shown to the user when order was placed.
                  "contentLanguage": "A String", # The two-letter ISO 639-1 language code for the item.
                  "title": "A String", # The title of the product.
                  "mpn": "A String", # Manufacturer Part Number (MPN) of the item.
                  "variantAttributes": [ # Variant attributes for the item. These are dimensions of the product, such as color, gender, material, pattern, and size. You can find a comprehensive list of variant attributes here.
                    {
                      "dimension": "A String", # The dimension of the variant.
                      "value": "A String", # The value for the dimension.
                    },
                  ],
                  "brand": "A String", # Brand of the item.
                  "itemGroupId": "A String", # Shared identifier for all variants of the same product.
                  "offerId": "A String", # An identifier of the item.
                  "price": { # Price of the item.
                    "currency": "A String", # The currency of the price.
                    "value": "A String", # The price represented as a number.
                  },
                  "imageLink": "A String", # URL of an image of the item.
                  "gtin": "A String", # Global Trade Item Number (GTIN) of the item.
                  "fees": [ # Associated fees at order creation time.
                    {
                      "amount": { # Amount of the fee.
                        "currency": "A String", # The currency of the price.
                        "value": "A String", # The price represented as a number.
                      },
                      "name": "A String", # Name of the fee.
                    },
                  ],
                  "id": "A String", # The REST ID of the product.
                  "condition": "A String", # Condition or state of the item.
                },
                "quantityPending": 42, # Number of items pending.
                "quantityDelivered": 42, # Number of items delivered.
                "returnInfo": { # Details of the return policy for the line item.
                  "policyUrl": "A String", # URL of the item return policy.
                  "isReturnable": True or False, # Whether the item is returnable.
                  "daysToReturn": 42, # How many days later the item can be returned.
                },
                "quantityOrdered": 42, # Number of items ordered.
                "price": { # Total price for the line item. For example, if two items for $10 are purchased, the total price will be $20.
                  "currency": "A String", # The currency of the price.
                  "value": "A String", # The price represented as a number.
                },
                "adjustments": [ # Price and tax adjustments applied on the line item.
                  {
                    "type": "A String", # Type of this adjustment.
                    "priceAdjustment": { # Adjustment for total price of the line item.
                      "currency": "A String", # The currency of the price.
                      "value": "A String", # The price represented as a number.
                    },
                    "taxAdjustment": { # Adjustment for total tax of the line item.
                      "currency": "A String", # The currency of the price.
                      "value": "A String", # The price represented as a number.
                    },
                  },
                ],
                "tax": { # Total tax amount for the line item. For example, if two items are purchased, and each have a cost tax of $2, the total tax amount will be $4.
                  "currency": "A String", # The currency of the price.
                  "value": "A String", # The price represented as a number.
                },
                "cancellations": [ # Cancellations of the line item.
                  {
                    "reason": "A String", # The reason for the cancellation. Orders that are cancelled with a noInventory reason will lead to the removal of the product from Shopping Actions until you make an update to that product. This will not affect your Shopping ads.
                    "creationDate": "A String", # Date on which the cancellation has been created, in ISO 8601 format.
                    "reasonText": "A String", # The explanation of the reason.
                    "actor": "A String", # The actor that created the cancellation.
                    "quantity": 42, # The quantity that was canceled.
                  },
                ],
                "quantityCanceled": 42, # Number of items canceled.
                "annotations": [ # Annotations that are attached to the line item.
                  {
                    "value": "A String", # Value for additional merchant provided (as key-value pairs) annotation about the line item.
                    "key": "A String", # Key for additional merchant provided (as key-value pairs) annotation about the line item.
                  },
                ],
                "returns": [ # Returns of the line item.
                  {
                    "reason": "A String", # The reason for the return.
                    "creationDate": "A String", # Date on which the item has been created, in ISO 8601 format.
                    "reasonText": "A String", # The explanation of the reason.
                    "actor": "A String", # The actor that created the refund.
                    "quantity": 42, # Quantity that is returned.
                  },
                ],
                "quantityShipped": 42, # Number of items shipped.
                "quantityReturned": 42, # Number of items returned.
                "id": "A String", # The ID of the line item.
                "shippingDetails": { # Details of the requested shipping for the line item.
                  "deliverByDate": "A String", # The delivery by date, in ISO 8601 format.
                  "method": { # Details of the shipping method.
                    "minDaysInTransit": 42, # Minimum transit time.
                    "carrier": "A String", # The carrier for the shipping. Optional. See shipments[].carrier for a list of acceptable values.
                    "methodName": "A String", # The name of the shipping method.
                    "maxDaysInTransit": 42, # Maximum transit time.
                  },
                  "shipByDate": "A String", # The ship by date, in ISO 8601 format.
                },
              },
            ],
            "shippingCost": { # The total cost of shipping for all items.
              "currency": "A String", # The currency of the price.
              "value": "A String", # The price represented as a number.
            },
            "id": "A String", # The REST ID of the order. Globally unique.
            "deliveryDetails": { # Delivery details for shipments.
              "phoneNumber": "A String", # The phone number of the person receiving the delivery.
              "address": { # The delivery address
                "locality": "A String", # City, town or commune. May also include dependent localities or sublocalities (e.g. neighborhoods or suburbs).
                "country": "A String", # CLDR country code (e.g. "US").
                "fullAddress": [ # Strings representing the lines of the printed label for mailing the order, for example:
                    # John Smith
                    # 1600 Amphitheatre Parkway
                    # Mountain View, CA, 94043
                    # United States
                  "A String",
                ],
                "streetAddress": [ # Street-level part of the address.
                  "A String",
                ],
                "postalCode": "A String", # Postal Code or ZIP (e.g. "94043").
                "recipientName": "A String", # Name of the recipient.
                "isPostOfficeBox": True or False, # Whether the address is a post office box.
                "region": "A String", # Top-level administrative subdivision of the country. For example, a state like California ("CA") or a province like Quebec ("QC").
              },
            },
          },
        ],
      }

`list_next(previous_request, previous_response)`

    Retrieves the next page of results.

    Args:
      previous_request: The request for the previous page. (required)
      previous_response: The response from the request for the previous page. (required)

    Returns:
      A request object that you can call 'execute()' on to request the next
      page. Returns None if there are no more items in the collection.

`rejectreturnlineitem(merchantId, orderId, body)`

    Rejects return on an line item.

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      orderId: string, The ID of the order. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "operationId": "A String", # The ID of the operation. Unique across all operations for a given order.
        "reason": "A String", # The reason for the return.
        "reasonText": "A String", # The explanation of the reason.
        "lineItemId": "A String", # The ID of the line item to return. Either lineItemId or productId is required.
        "productId": "A String", # The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.
        "quantity": 42, # The quantity to return and refund.
      }

    Returns:
      An object of the form:

        {
        "kind": "content#ordersRejectReturnLineItemResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersRejectReturnLineItemResponse".
        "executionStatus": "A String", # The status of the execution.
      }

`returnrefundlineitem(merchantId, orderId, body)`

    Returns and refunds a line item. Note that this method can only be called on fully shipped orders.

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      orderId: string, The ID of the order. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "priceAmount": { # The amount to be refunded. This may be pre-tax or post-tax depending on the location of the order. If omitted, refundless return is assumed.
          "currency": "A String", # The currency of the price.
          "value": "A String", # The price represented as a number.
        },
        "taxAmount": { # The amount of tax to be refunded. Optional, but if filled, then priceAmount must be set. Calculated automatically if not provided.
          "currency": "A String", # The currency of the price.
          "value": "A String", # The price represented as a number.
        },
        "operationId": "A String", # The ID of the operation. Unique across all operations for a given order.
        "reason": "A String", # The reason for the return.
        "reasonText": "A String", # The explanation of the reason.
        "lineItemId": "A String", # The ID of the line item to return. Either lineItemId or productId is required.
        "quantity": 42, # The quantity to return and refund.
        "productId": "A String", # The ID of the product to return. This is the REST ID used in the products service. Either lineItemId or productId is required.
      }

    Returns:
      An object of the form:

        {
        "kind": "content#ordersReturnRefundLineItemResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersReturnRefundLineItemResponse".
        "executionStatus": "A String", # The status of the execution.
      }

`setlineitemmetadata(merchantId, orderId, body)`

    Sets (or overrides if it already exists) merchant provided annotations in the form of key-value pairs. A common use case would be to supply us with additional structured information about a line item that cannot be provided via other methods. Submitted key-value pairs can be retrieved as part of the orders resource.

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      orderId: string, The ID of the order. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "productId": "A String", # The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required.
        "annotations": [
          {
            "value": "A String", # Value for additional merchant provided (as key-value pairs) annotation about the line item.
            "key": "A String", # Key for additional merchant provided (as key-value pairs) annotation about the line item.
          },
        ],
        "lineItemId": "A String", # The ID of the line item to set metadata. Either lineItemId or productId is required.
        "operationId": "A String", # The ID of the operation. Unique across all operations for a given order.
      }

    Returns:
      An object of the form:

        {
        "kind": "content#ordersSetLineItemMetadataResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersSetLineItemMetadataResponse".
        "executionStatus": "A String", # The status of the execution.
      }

`shiplineitems(merchantId, orderId, body)`

    Marks line item(s) as shipped.

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      orderId: string, The ID of the order. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "lineItems": [ # Line items to ship.
          {
            "quantity": 42, # The quantity that is shipped.
            "lineItemId": "A String", # The ID of the line item that is shipped. Either lineItemId or productId is required.
            "productId": "A String", # The ID of the product to ship. This is the REST ID used in the products service. Either lineItemId or productId is required.
          },
        ],
        "shipmentInfos": [ # Shipment information. This field is repeated because a single line item can be shipped in several packages (and have several tracking IDs).
          {
            "carrier": "A String", # The carrier handling the shipment. See shipments[].carrier in the  Orders resource representation for a list of acceptable values.
            "trackingId": "A String", # The tracking ID for the shipment.
            "shipmentId": "A String", # The ID of the shipment. This is assigned by the merchant and is unique to each shipment.
          },
        ],
        "shipmentGroupId": "A String", # ID of the shipment group. Required for orders that use the orderinvoices service.
        "operationId": "A String", # The ID of the operation. Unique across all operations for a given order.
      }

    Returns:
      An object of the form:

        {
        "kind": "content#ordersShipLineItemsResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersShipLineItemsResponse".
        "executionStatus": "A String", # The status of the execution.
      }

`updatelineitemshippingdetails(merchantId, orderId, body)`

    Updates ship by and delivery by dates for a line item.

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      orderId: string, The ID of the order. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "deliverByDate": "A String", # Updated delivery by date, in ISO 8601 format. If not specified only ship by date is updated.
            #
            # Provided date should be within 1 year timeframe and can not be a date in the past.
        "shipByDate": "A String", # Updated ship by date, in ISO 8601 format. If not specified only deliver by date is updated.
            #
            # Provided date should be within 1 year timeframe and can not be a date in the past.
        "productId": "A String", # The ID of the product to set metadata. This is the REST ID used in the products service. Either lineItemId or productId is required.
        "lineItemId": "A String", # The ID of the line item to set metadata. Either lineItemId or productId is required.
        "operationId": "A String", # The ID of the operation. Unique across all operations for a given order.
      }

    Returns:
      An object of the form:

        {
        "kind": "content#ordersUpdateLineItemShippingDetailsResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersUpdateLineItemShippingDetailsResponse".
        "executionStatus": "A String", # The status of the execution.
      }

`updatemerchantorderid(merchantId, orderId, body)`

    Updates the merchant order ID for a given order.

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      orderId: string, The ID of the order. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "merchantOrderId": "A String", # The merchant order id to be assigned to the order. Must be unique per merchant.
        "operationId": "A String", # The ID of the operation. Unique across all operations for a given order.
      }

    Returns:
      An object of the form:

        {
        "kind": "content#ordersUpdateMerchantOrderIdResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersUpdateMerchantOrderIdResponse".
        "executionStatus": "A String", # The status of the execution.
      }

`updateshipment(merchantId, orderId, body)`

    Updates a shipment's status, carrier, and/or tracking ID.

    Args:
      merchantId: string, The ID of the account that manages the order. This cannot be a multi-client account. (required)
      orderId: string, The ID of the order. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "status": "A String", # New status for the shipment. Not updated if missing.
        "carrier": "A String", # The carrier handling the shipment. Not updated if missing. See shipments[].carrier in the  Orders resource representation for a list of acceptable values.
        "trackingId": "A String", # The tracking ID for the shipment. Not updated if missing.
        "shipmentId": "A String", # The ID of the shipment.
        "deliveryDate": "A String", # Date on which the shipment has been delivered, in ISO 8601 format. Optional and can be provided only if status is delivered.
        "operationId": "A String", # The ID of the operation. Unique across all operations for a given order.
      }

    Returns:
      An object of the form:

        {
        "kind": "content#ordersUpdateShipmentResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersUpdateShipmentResponse".
        "executionStatus": "A String", # The status of the execution.
      }