# Content API for Shopping . orders

## Instance Methods

Marks an order as acknowledged. This method can only be called for non-multi-client accounts.

Sandbox only. Moves a test order from state "inProgress" to state "pendingShipment". This method can only be called for non-multi-client accounts.

Cancels all line items in an order. This method can only be called for non-multi-client accounts.

Cancels a line item. This method can only be called for non-multi-client accounts.

Sandbox only. Creates a test order. This method can only be called for non-multi-client accounts.

Retrieves or modifies multiple orders in a single request. This method can only be called for non-multi-client accounts.

Retrieves an order from your Merchant Center account. This method can only be called for non-multi-client accounts.

Retrieves an order using merchant order id. This method can only be called for non-multi-client accounts.

Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox. This method can only be called for non-multi-client accounts.

Lists the orders in your Merchant Center account. This method can only be called for non-multi-client accounts.

Retrieves the next page of results.

Refund a portion of the order, up to the full amount paid. This method can only be called for non-multi-client accounts.

Returns a line item. This method can only be called for non-multi-client accounts.

Marks line item(s) as shipped. This method can only be called for non-multi-client accounts.

Updates the merchant order ID for a given order. This method can only be called for non-multi-client accounts.

Updates a shipment's status, carrier, and/or tracking ID. This method can only be called for non-multi-client accounts.

### Method Details

`acknowledge(merchantId, orderId, body)`

    Marks an order as acknowledged. This method can only be called for non-multi-client accounts.

    Args:
      merchantId: string, The ID of the managing 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". This method can only be called for non-multi-client accounts.

    Args:
      merchantId: string, The ID of the managing 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. This method can only be called for non-multi-client accounts.

    Args:
      merchantId: string, The ID of the managing 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. This method can only be called for non-multi-client accounts.

    Args:
      merchantId: string, The ID of the managing account. (required)
      orderId: string, The ID of the order. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "reason": "A String", # The reason for the cancellation.
        "amount": { # Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order.
          "currency": "A String", # The currency of the price.
          "value": "A String", # The price represented as a number.
        },
        "reasonText": "A String", # The explanation of the reason.
        "lineItemId": "A String", # The ID of the line item to cancel.
        "operationId": "A String", # The ID of the operation. Unique across all operations for a given order.
        "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.
      }

`createtestorder(merchantId, body)`

    Sandbox only. Creates a test order. This method can only be called for non-multi-client accounts.

    Args:
      merchantId: string, The ID of the managing account. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "testOrder": { # The test order to create.
          "customer": { # The details of the customer who placed the order.
            "explicitMarketingPreference": True or False, # If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the checkout flow. Optional.
            "fullName": "A String", # Full name of the customer.
            "email": "A String", # Email address of the customer.
          },
          "promotions": [ # The details of the merchant provided promotions applied to the order. More details about the program are  here.
            {
              "benefits": [
                {
                  "offerIds": [ # The OfferId(s) that were purchased in this order and map to this specific benefit of the promotion.
                    "A String",
                  ],
                  "discount": { # The discount in the order price when the promotion is applied.
                    "currency": "A String", # The currency of the price.
                    "value": "A String", # The price represented as a number.
                  },
                  "type": "A String", # Describes whether the promotion applies to products (e.g. 20% off) or to shipping (e.g. Free Shipping).
                  "taxImpact": { # The impact on tax when the promotion is applied.
                    "currency": "A String", # The currency of the price.
                    "value": "A String", # The price represented as a number.
                  },
                  "subType": "A String", # Further describes the benefit of the promotion. Note that we will expand on this enumeration as we support new promotion sub-types.
                },
              ],
              "longTitle": "A String", # The full title of the promotion.
              "genericRedemptionCode": "A String", # Optional. The text code that corresponds to the promotion when applied on the retailer?s website.
              "redemptionChannel": "A String", # Indicates that the promotion is valid online.
              "productApplicability": "A String", # Whether the promotion is applicable to all products or only specific products.
              "effectiveDates": "A String", # The date and time frame when the promotion is active and ready for validation review. Note that the promotion live time may be delayed for a few hours due to the validation review.
                  # Start date and end date are separated by a forward slash (/). The start date is specified by the format (YYYY-MM-DD), followed by the letter ?T?, the time of the day when the sale starts (in Greenwich Mean Time, GMT), followed by an expression of the time zone for the sale. The end date is in the same format.
              "id": "A String", # The unique ID of the promotion.
            },
          ],
          "kind": "content#testOrder", # Identifies what kind of resource this is. Value: the fixed string "content#testOrder".
          "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.
          },
          "predefinedDeliveryAddress": "A String", # Identifier of one of the predefined delivery addresses for the delivery.
          "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.
          },
          "shippingOption": "A String", # The requested shipping option.
          "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.
                "channel": "A String", # The item's channel.
                "price": { # The price for the product.
                  "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.
              },
              "unitTax": { # Unit tax for the line item.
                "currency": "A String", # The currency of the price.
                "value": "A String", # The price represented as a number.
              },
              "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.
                  "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.
              },
            },
          ],
          "paymentMethod": { # The details of the payment method.
            "expirationMonth": 42, # The card expiration month (January = 1, February = 2 etc.).
            "type": "A String", # The type of instrument. Note that real orders might have different values than the four values accepted by createTestOrder.
            "expirationYear": 42, # The card expiration year (4-digit, e.g. 2015).
            "lastFourDigits": "A String", # The last four digits of the card number.
            "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".
      }

`custombatch(body)`

    Retrieves or modifies multiple orders in a single request. This method can only be called for non-multi-client accounts.

    Args:
      body: object, The request body. (required)
        The object takes the form of:

    {
        "entries": [ # The request entries to be processed in the batch.
          {
            "orderId": "A String", # The ID of the order. Required for all methods beside getByMerchantOrderId.
            "merchantOrderId": "A String", # The merchant order id. Required for updateMerchantOrderId and getByMerchantOrderId methods.
            "shipLineItems": { # Required for shipLineItems method.
              "lineItems": [ # Line items to ship.
                {
                  "lineItemId": "A String", # The id of the line item that is shipped.
                  "quantity": 42, # The quantity that is shipped.
                },
              ],
              "carrier": "A String", # The carrier handling the shipment.
              "trackingId": "A String", # The tracking id for the shipment.
              "shipmentId": "A String", # The ID of the shipment.
            },
            "updateShipment": { # Required for updateShipment method.
              "status": "A String", # New status for the shipment. Not updated if missing.
              "carrier": "A String", # The carrier handling the shipment. Not updated if missing.
              "trackingId": "A String", # The tracking id for the shipment. Not updated if missing.
              "shipmentId": "A String", # The ID of the shipment.
            },
            "method": "A String", # The method to apply.
            "batchId": 42, # An entry ID, unique within the batch request.
            "cancelLineItem": { # Required for cancelLineItem method.
              "amount": { # Amount to refund for the cancelation. Optional. If not set, Google will calculate the default based on the price and tax of the items involved. The amount must not be larger than the net amount left on the order.
                "currency": "A String", # The currency of the price.
                "value": "A String", # The price represented as a number.
              },
              "reasonText": "A String", # The explanation of the reason.
              "reason": "A String", # The reason for the cancellation.
              "lineItemId": "A String", # The ID of the line item to cancel.
              "quantity": 42, # The quantity to cancel.
            },
            "refund": { # Required for refund method.
              "amount": { # The amount that is refunded.
                "currency": "A String", # The currency of the price.
                "value": "A String", # The price represented as a number.
              },
              "reasonText": "A String", # The explanation of the reason.
              "reason": "A String", # The reason for the refund.
            },
            "cancel": { # Required for cancel method.
              "reason": "A String", # The reason for the cancellation.
              "reasonText": "A String", # The explanation of the reason.
            },
            "returnLineItem": { # Required for returnLineItem method.
              "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.
              "quantity": 42, # The quantity to return.
            },
            "merchantId": "A String", # The ID of the managing account.
            "operationId": "A String", # The ID of the operation. Unique across all operations for a given order. Required for all methods beside get and getByMerchantOrderId.
          },
        ],
      }

    Returns:
      An object of the form:

        {
        "kind": "content#ordersCustomBatchResponse", # Identifies what kind of resource this is. Value: the fixed string "content#ordersCustomBatchResponse".
        "entries": [ # The result of the execution of the batch requests.
          {
            "batchId": 42, # The ID of the request entry this entry responds to.
            "kind": "content#ordersCustomBatchResponseEntry", # Identifies what kind of resource this is. Value: the fixed string "content#ordersCustomBatchResponseEntry".
            "errors": { # A list of errors returned by a failed batch entry. # A list of errors defined if and only if the request failed.
              "message": "A String", # The message of the first error in errors.
              "code": 42, # The HTTP status of the first error in errors.
              "errors": [ # A list of errors.
                { # An error returned by the API.
                  "reason": "A String", # The error code.
                  "domain": "A String", # The domain of the error.
                  "message": "A String", # A description of the error.
                },
              ],
            },
            "order": { # The retrieved order. Only defined if the method is get and if the request was successful.
              "customer": { # The details of the customer who placed the order.
                "explicitMarketingPreference": True or False, # If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the checkout flow.
                "fullName": "A String", # Full name of the customer.
                "email": "A String", # Email address of the customer.
              },
              "promotions": [ # The details of the merchant provided promotions applied to the order. More details about the program are  here.
                {
                  "benefits": [
                    {
                      "offerIds": [ # The OfferId(s) that were purchased in this order and map to this specific benefit of the promotion.
                        "A String",
                      ],
                      "discount": { # The discount in the order price when the promotion is applied.
                        "currency": "A String", # The currency of the price.
                        "value": "A String", # The price represented as a number.
                      },
                      "type": "A String", # Describes whether the promotion applies to products (e.g. 20% off) or to shipping (e.g. Free Shipping).
                      "taxImpact": { # The impact on tax when the promotion is applied.
                        "currency": "A String", # The currency of the price.
                        "value": "A String", # The price represented as a number.
                      },
                      "subType": "A String", # Further describes the benefit of the promotion. Note that we will expand on this enumeration as we support new promotion sub-types.
                    },
                  ],
                  "longTitle": "A String", # The full title of the promotion.
                  "genericRedemptionCode": "A String", # Optional. The text code that corresponds to the promotion when applied on the retailer?s website.
                  "redemptionChannel": "A String", # Indicates that the promotion is valid online.
                  "productApplicability": "A String", # Whether the promotion is applicable to all products or only specific products.
                  "effectiveDates": "A String", # The date and time frame when the promotion is active and ready for validation review. Note that the promotion live time may be delayed for a few hours due to the validation review.
                      # Start date and end date are separated by a forward slash (/). The start date is specified by the format (YYYY-MM-DD), followed by the letter ?T?, the time of the day when the sale starts (in Greenwich Mean Time, GMT), followed by an expression of the time zone for the sale. The end date is in the same format.
                  "id": "A String", # The unique ID of 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.
                  "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 delievered
                  "lineItems": [ # The line items that are shipped.
                    {
                      "lineItemId": "A String", # The id of the line item that is shipped.
                      "quantity": 42, # The quantity that is shipped.
                    },
                  ],
                  "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.
                },
              ],
              "paymentMethod": { # The details of the payment method.
                "expirationMonth": 42, # The card expiration month (January = 1, February = 2 etc.).
                "lastFourDigits": "A String", # The last four digits of the card number.
                "expirationYear": 42, # The card expiration year (4-digit, e.g. 2015).
                "phoneNumber": "A String", # The billing phone 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 (e.g. "CA").
                },
                "type": "A String", # The type of instrument (VISA, Mastercard, etc).
              },
              "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.
              },
              "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.
              "shippingOption": "A String", # The requested shipping option.
              "status": "A String", # The status of the order.
              "deliveryDetails": { # The details for the delivery.
                "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 (e.g. "CA").
                },
              },
              "placedDate": "A String", # The date when the order was placed, in ISO 8601 format.
              "channelType": "A String", # The channel type of the order: "purchaseOnGoogle" or "googleExpress".
              "lineItems": [ # Line items that are ordered.
                {
                  "product": { # Product data from the time of the order placement.
                    "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.
                    "channel": "A String", # The item's channel (online or local).
                    "id": "A String", # The REST id of the product.
                    "condition": "A String", # Condition or state of the item.
                  },
                  "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.
                  },
                  "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.
                  },
                  "quantityPending": 42, # Number of items pending.
                  "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 POG 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.
                  "quantityOrdered": 42, # Number of items ordered.
                  "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.
                      "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.
                  },
                },
              ],
              "netAmount": { # The net amount for the order. For example, if an order was originally for a grand total of $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.
              },
              "id": "A String", # The REST id of the order. Globally unique.
            },
            "executionStatus": "A String", # The status of the execution. Only defined if the method is not get or getByMerchantOrderId and if the request was successful.
          },
        ],
      }

`get(merchantId, orderId)`

    Retrieves an order from your Merchant Center account. This method can only be called for non-multi-client accounts.

    Args:
      merchantId: string, The ID of the managing account. (required)
      orderId: string, The ID of the order. (required)

    Returns:
      An object of the form:

        {
        "customer": { # The details of the customer who placed the order.
          "explicitMarketingPreference": True or False, # If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the checkout flow.
          "fullName": "A String", # Full name of the customer.
          "email": "A String", # Email address of the customer.
        },
        "promotions": [ # The details of the merchant provided promotions applied to the order. More details about the program are  here.
          {
            "benefits": [
              {
                "offerIds": [ # The OfferId(s) that were purchased in this order and map to this specific benefit of the promotion.
                  "A String",
                ],
                "discount": { # The discount in the order price when the promotion is applied.
                  "currency": "A String", # The currency of the price.
                  "value": "A String", # The price represented as a number.
                },
                "type": "A String", # Describes whether the promotion applies to products (e.g. 20% off) or to shipping (e.g. Free Shipping).
                "taxImpact": { # The impact on tax when the promotion is applied.
                  "currency": "A String", # The currency of the price.
                  "value": "A String", # The price represented as a number.
                },
                "subType": "A String", # Further describes the benefit of the promotion. Note that we will expand on this enumeration as we support new promotion sub-types.
              },
            ],
            "longTitle": "A String", # The full title of the promotion.
            "genericRedemptionCode": "A String", # Optional. The text code that corresponds to the promotion when applied on the retailer?s website.
            "redemptionChannel": "A String", # Indicates that the promotion is valid online.
            "productApplicability": "A String", # Whether the promotion is applicable to all products or only specific products.
            "effectiveDates": "A String", # The date and time frame when the promotion is active and ready for validation review. Note that the promotion live time may be delayed for a few hours due to the validation review.
                # Start date and end date are separated by a forward slash (/). The start date is specified by the format (YYYY-MM-DD), followed by the letter ?T?, the time of the day when the sale starts (in Greenwich Mean Time, GMT), followed by an expression of the time zone for the sale. The end date is in the same format.
            "id": "A String", # The unique ID of 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.
            "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 delievered
            "lineItems": [ # The line items that are shipped.
              {
                "lineItemId": "A String", # The id of the line item that is shipped.
                "quantity": 42, # The quantity that is shipped.
              },
            ],
            "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.
          },
        ],
        "paymentMethod": { # The details of the payment method.
          "expirationMonth": 42, # The card expiration month (January = 1, February = 2 etc.).
          "lastFourDigits": "A String", # The last four digits of the card number.
          "expirationYear": 42, # The card expiration year (4-digit, e.g. 2015).
          "phoneNumber": "A String", # The billing phone 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 (e.g. "CA").
          },
          "type": "A String", # The type of instrument (VISA, Mastercard, etc).
        },
        "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.
        },
        "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.
        "shippingOption": "A String", # The requested shipping option.
        "status": "A String", # The status of the order.
        "deliveryDetails": { # The details for the delivery.
          "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 (e.g. "CA").
          },
        },
        "placedDate": "A String", # The date when the order was placed, in ISO 8601 format.
        "channelType": "A String", # The channel type of the order: "purchaseOnGoogle" or "googleExpress".
        "lineItems": [ # Line items that are ordered.
          {
            "product": { # Product data from the time of the order placement.
              "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.
              "channel": "A String", # The item's channel (online or local).
              "id": "A String", # The REST id of the product.
              "condition": "A String", # Condition or state of the item.
            },
            "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.
            },
            "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.
            },
            "quantityPending": 42, # Number of items pending.
            "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 POG 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.
            "quantityOrdered": 42, # Number of items ordered.
            "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.
                "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.
            },
          },
        ],
        "netAmount": { # The net amount for the order. For example, if an order was originally for a grand total of $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.
        },
        "id": "A String", # The REST id of the order. Globally unique.
      }

`getbymerchantorderid(merchantId, merchantOrderId)`

    Retrieves an order using merchant order id. This method can only be called for non-multi-client accounts.

    Args:
      merchantId: string, The ID of the managing 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": { # The requested order.
          "customer": { # The details of the customer who placed the order.
            "explicitMarketingPreference": True or False, # If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the checkout flow.
            "fullName": "A String", # Full name of the customer.
            "email": "A String", # Email address of the customer.
          },
          "promotions": [ # The details of the merchant provided promotions applied to the order. More details about the program are  here.
            {
              "benefits": [
                {
                  "offerIds": [ # The OfferId(s) that were purchased in this order and map to this specific benefit of the promotion.
                    "A String",
                  ],
                  "discount": { # The discount in the order price when the promotion is applied.
                    "currency": "A String", # The currency of the price.
                    "value": "A String", # The price represented as a number.
                  },
                  "type": "A String", # Describes whether the promotion applies to products (e.g. 20% off) or to shipping (e.g. Free Shipping).
                  "taxImpact": { # The impact on tax when the promotion is applied.
                    "currency": "A String", # The currency of the price.
                    "value": "A String", # The price represented as a number.
                  },
                  "subType": "A String", # Further describes the benefit of the promotion. Note that we will expand on this enumeration as we support new promotion sub-types.
                },
              ],
              "longTitle": "A String", # The full title of the promotion.
              "genericRedemptionCode": "A String", # Optional. The text code that corresponds to the promotion when applied on the retailer?s website.
              "redemptionChannel": "A String", # Indicates that the promotion is valid online.
              "productApplicability": "A String", # Whether the promotion is applicable to all products or only specific products.
              "effectiveDates": "A String", # The date and time frame when the promotion is active and ready for validation review. Note that the promotion live time may be delayed for a few hours due to the validation review.
                  # Start date and end date are separated by a forward slash (/). The start date is specified by the format (YYYY-MM-DD), followed by the letter ?T?, the time of the day when the sale starts (in Greenwich Mean Time, GMT), followed by an expression of the time zone for the sale. The end date is in the same format.
              "id": "A String", # The unique ID of 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.
              "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 delievered
              "lineItems": [ # The line items that are shipped.
                {
                  "lineItemId": "A String", # The id of the line item that is shipped.
                  "quantity": 42, # The quantity that is shipped.
                },
              ],
              "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.
            },
          ],
          "paymentMethod": { # The details of the payment method.
            "expirationMonth": 42, # The card expiration month (January = 1, February = 2 etc.).
            "lastFourDigits": "A String", # The last four digits of the card number.
            "expirationYear": 42, # The card expiration year (4-digit, e.g. 2015).
            "phoneNumber": "A String", # The billing phone 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 (e.g. "CA").
            },
            "type": "A String", # The type of instrument (VISA, Mastercard, etc).
          },
          "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.
          },
          "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.
          "shippingOption": "A String", # The requested shipping option.
          "status": "A String", # The status of the order.
          "deliveryDetails": { # The details for the delivery.
            "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 (e.g. "CA").
            },
          },
          "placedDate": "A String", # The date when the order was placed, in ISO 8601 format.
          "channelType": "A String", # The channel type of the order: "purchaseOnGoogle" or "googleExpress".
          "lineItems": [ # Line items that are ordered.
            {
              "product": { # Product data from the time of the order placement.
                "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.
                "channel": "A String", # The item's channel (online or local).
                "id": "A String", # The REST id of the product.
                "condition": "A String", # Condition or state of the item.
              },
              "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.
              },
              "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.
              },
              "quantityPending": 42, # Number of items pending.
              "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 POG 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.
              "quantityOrdered": 42, # Number of items ordered.
              "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.
                  "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.
              },
            },
          ],
          "netAmount": { # The net amount for the order. For example, if an order was originally for a grand total of $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.
          },
          "id": "A String", # The REST id of the order. Globally unique.
        },
      }

`gettestordertemplate(merchantId, templateName)`

    Sandbox only. Retrieves an order template that can be used to quickly create a new order in sandbox. This method can only be called for non-multi-client accounts.

    Args:
      merchantId: string, The ID of the managing account. (required)
      templateName: string, The name of the template to retrieve. (required)
        Allowed values
          template1 -
          template1a -
          template1b -
          template2 -

    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.
          "customer": { # The details of the customer who placed the order.
            "explicitMarketingPreference": True or False, # If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the checkout flow. Optional.
            "fullName": "A String", # Full name of the customer.
            "email": "A String", # Email address of the customer.
          },
          "promotions": [ # The details of the merchant provided promotions applied to the order. More details about the program are  here.
            {
              "benefits": [
                {
                  "offerIds": [ # The OfferId(s) that were purchased in this order and map to this specific benefit of the promotion.
                    "A String",
                  ],
                  "discount": { # The discount in the order price when the promotion is applied.
                    "currency": "A String", # The currency of the price.
                    "value": "A String", # The price represented as a number.
                  },
                  "type": "A String", # Describes whether the promotion applies to products (e.g. 20% off) or to shipping (e.g. Free Shipping).
                  "taxImpact": { # The impact on tax when the promotion is applied.
                    "currency": "A String", # The currency of the price.
                    "value": "A String", # The price represented as a number.
                  },
                  "subType": "A String", # Further describes the benefit of the promotion. Note that we will expand on this enumeration as we support new promotion sub-types.
                },
              ],
              "longTitle": "A String", # The full title of the promotion.
              "genericRedemptionCode": "A String", # Optional. The text code that corresponds to the promotion when applied on the retailer?s website.
              "redemptionChannel": "A String", # Indicates that the promotion is valid online.
              "productApplicability": "A String", # Whether the promotion is applicable to all products or only specific products.
              "effectiveDates": "A String", # The date and time frame when the promotion is active and ready for validation review. Note that the promotion live time may be delayed for a few hours due to the validation review.
                  # Start date and end date are separated by a forward slash (/). The start date is specified by the format (YYYY-MM-DD), followed by the letter ?T?, the time of the day when the sale starts (in Greenwich Mean Time, GMT), followed by an expression of the time zone for the sale. The end date is in the same format.
              "id": "A String", # The unique ID of the promotion.
            },
          ],
          "kind": "content#testOrder", # Identifies what kind of resource this is. Value: the fixed string "content#testOrder".
          "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.
          },
          "predefinedDeliveryAddress": "A String", # Identifier of one of the predefined delivery addresses for the delivery.
          "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.
          },
          "shippingOption": "A String", # The requested shipping option.
          "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.
                "channel": "A String", # The item's channel.
                "price": { # The price for the product.
                  "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.
              },
              "unitTax": { # Unit tax for the line item.
                "currency": "A String", # The currency of the price.
                "value": "A String", # The price represented as a number.
              },
              "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.
                  "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.
              },
            },
          ],
          "paymentMethod": { # The details of the payment method.
            "expirationMonth": 42, # The card expiration month (January = 1, February = 2 etc.).
            "type": "A String", # The type of instrument. Note that real orders might have different values than the four values accepted by createTestOrder.
            "expirationYear": 42, # The card expiration year (4-digit, e.g. 2015).
            "lastFourDigits": "A String", # The last four digits of the card number.
            "predefinedBillingAddress": "A String", # The billing address.
          },
        },
      }

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

    Lists the orders in your Merchant Center account. This method can only be called for non-multi-client accounts.

    Args:
      merchantId: string, The ID of the managing account. (required)
      orderBy: string, The ordering of the returned list. The only supported value are placedDate desc and placedDate asc for now, which returns orders sorted by placement date. "placedDate desc" stands for listing orders by placement date, from oldest to most recent. "placedDate asc" stands for listing orders by placement date, from most recent to oldest. In future releases we'll support other sorting criteria.
        Allowed values
          placedDate asc -
          placedDate desc -
      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.
    Known issue: All List calls will return all Orders without limit regardless of the value of this field.
      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": [
          {
            "customer": { # The details of the customer who placed the order.
              "explicitMarketingPreference": True or False, # If set, this indicates the user explicitly chose to opt in or out of providing marketing rights to the merchant. If unset, this indicates the user has already made this choice in a previous purchase, and was thus not shown the marketing right opt in/out checkbox during the checkout flow.
              "fullName": "A String", # Full name of the customer.
              "email": "A String", # Email address of the customer.
            },
            "promotions": [ # The details of the merchant provided promotions applied to the order. More details about the program are  here.
              {
                "benefits": [
                  {
                    "offerIds": [ # The OfferId(s) that were purchased in this order and map to this specific benefit of the promotion.
                      "A String",
                    ],
                    "discount": { # The discount in the order price when the promotion is applied.
                      "currency": "A String", # The currency of the price.
                      "value": "A String", # The price represented as a number.
                    },
                    "type": "A String", # Describes whether the promotion applies to products (e.g. 20% off) or to shipping (e.g. Free Shipping).
                    "taxImpact": { # The impact on tax when the promotion is applied.
                      "currency": "A String", # The currency of the price.
                      "value": "A String", # The price represented as a number.
                    },
                    "subType": "A String", # Further describes the benefit of the promotion. Note that we will expand on this enumeration as we support new promotion sub-types.
                  },
                ],
                "longTitle": "A String", # The full title of the promotion.
                "genericRedemptionCode": "A String", # Optional. The text code that corresponds to the promotion when applied on the retailer?s website.
                "redemptionChannel": "A String", # Indicates that the promotion is valid online.
                "productApplicability": "A String", # Whether the promotion is applicable to all products or only specific products.
                "effectiveDates": "A String", # The date and time frame when the promotion is active and ready for validation review. Note that the promotion live time may be delayed for a few hours due to the validation review.
                    # Start date and end date are separated by a forward slash (/). The start date is specified by the format (YYYY-MM-DD), followed by the letter ?T?, the time of the day when the sale starts (in Greenwich Mean Time, GMT), followed by an expression of the time zone for the sale. The end date is in the same format.
                "id": "A String", # The unique ID of 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.
                "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 delievered
                "lineItems": [ # The line items that are shipped.
                  {
                    "lineItemId": "A String", # The id of the line item that is shipped.
                    "quantity": 42, # The quantity that is shipped.
                  },
                ],
                "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.
              },
            ],
            "paymentMethod": { # The details of the payment method.
              "expirationMonth": 42, # The card expiration month (January = 1, February = 2 etc.).
              "lastFourDigits": "A String", # The last four digits of the card number.
              "expirationYear": 42, # The card expiration year (4-digit, e.g. 2015).
              "phoneNumber": "A String", # The billing phone 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 (e.g. "CA").
              },
              "type": "A String", # The type of instrument (VISA, Mastercard, etc).
            },
            "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.
            },
            "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.
            "shippingOption": "A String", # The requested shipping option.
            "status": "A String", # The status of the order.
            "deliveryDetails": { # The details for the delivery.
              "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 (e.g. "CA").
              },
            },
            "placedDate": "A String", # The date when the order was placed, in ISO 8601 format.
            "channelType": "A String", # The channel type of the order: "purchaseOnGoogle" or "googleExpress".
            "lineItems": [ # Line items that are ordered.
              {
                "product": { # Product data from the time of the order placement.
                  "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.
                  "channel": "A String", # The item's channel (online or local).
                  "id": "A String", # The REST id of the product.
                  "condition": "A String", # Condition or state of the item.
                },
                "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.
                },
                "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.
                },
                "quantityPending": 42, # Number of items pending.
                "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 POG 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.
                "quantityOrdered": 42, # Number of items ordered.
                "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.
                    "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.
                },
              },
            ],
            "netAmount": { # The net amount for the order. For example, if an order was originally for a grand total of $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.
            },
            "id": "A String", # The REST id of the order. Globally unique.
          },
        ],
      }

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

`refund(merchantId, orderId, body)`

    Refund a portion of the order, up to the full amount paid. This method can only be called for non-multi-client accounts.

    Args:
      merchantId: string, The ID of the managing account. (required)
      orderId: string, The ID of the order to refund. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "amount": { # The amount that is refunded.
          "currency": "A String", # The currency of the price.
          "value": "A String", # The price represented as a number.
        },
        "reasonText": "A String", # The explanation of the reason.
        "reason": "A String", # The reason for the refund.
        "operationId": "A String", # The ID of the operation. Unique across all operations for a given order.
      }

    Returns:
      An object of the form:

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

`returnlineitem(merchantId, orderId, body)`

    Returns a line item. This method can only be called for non-multi-client accounts.

    Args:
      merchantId: string, The ID of the managing account. (required)
      orderId: string, The ID of the order. (required)
      body: object, The request body. (required)
        The object takes the form of:

    {
        "reason": "A String", # The reason for the return.
        "quantity": 42, # The quantity to return.
        "reasonText": "A String", # The explanation of the reason.
        "lineItemId": "A String", # The ID of the line item to return.
        "operationId": "A String", # The ID of the operation. Unique across all operations for a given order.
      }

    Returns:
      An object of the form:

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

`shiplineitems(merchantId, orderId, body)`

    Marks line item(s) as shipped. This method can only be called for non-multi-client accounts.

    Args:
      merchantId: string, The ID of the managing 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.
          {
            "lineItemId": "A String", # The id of the line item that is shipped.
            "quantity": 42, # The quantity that is shipped.
          },
        ],
        "carrier": "A String", # The carrier handling the shipment.
        "shipmentId": "A String", # The ID of the shipment.
        "trackingId": "A String", # The tracking id for the shipment.
        "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.
      }

`updatemerchantorderid(merchantId, orderId, body)`

    Updates the merchant order ID for a given order. This method can only be called for non-multi-client accounts.

    Args:
      merchantId: string, The ID of the managing 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. This method can only be called for non-multi-client accounts.

    Args:
      merchantId: string, The ID of the managing 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.
        "shipmentId": "A String", # The ID of the shipment.
        "carrier": "A String", # The carrier handling the shipment. Not updated if missing.
        "trackingId": "A String", # The tracking id for the shipment. Not updated if missing.
        "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.
      }