{
  "version": "lfp_v1beta",
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/content": {
          "description": "Manage your product listings and accounts for Google Shopping"
        }
      }
    }
  },
  "description": "Programmatically manage your Merchant Center Accounts.",
  "basePath": "",
  "mtlsRootUrl": "https://merchantapi.mtls.googleapis.com/",
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "parameters": {
    "upload_protocol": {
      "type": "string",
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query"
    },
    "key": {
      "type": "string",
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query"
    },
    "callback": {
      "type": "string",
      "description": "JSONP",
      "location": "query"
    },
    "oauth_token": {
      "type": "string",
      "description": "OAuth 2.0 token for the current user.",
      "location": "query"
    },
    "quotaUser": {
      "location": "query",
      "type": "string",
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters."
    },
    "access_token": {
      "type": "string",
      "description": "OAuth access token.",
      "location": "query"
    },
    "$.xgafv": {
      "type": "string",
      "description": "V1 error format.",
      "location": "query",
      "enum": [
        "1",
        "2"
      ],
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ]
    },
    "alt": {
      "type": "string",
      "description": "Data format for response.",
      "location": "query",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "default": "json",
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ]
    },
    "fields": {
      "location": "query",
      "type": "string",
      "description": "Selector specifying which fields to include in a partial response."
    },
    "prettyPrint": {
      "type": "boolean",
      "description": "Returns response with indentations and line breaks.",
      "default": "true",
      "location": "query"
    },
    "uploadType": {
      "location": "query",
      "type": "string",
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\")."
    }
  },
  "canonicalName": "Merchant",
  "id": "merchantapi:lfp_v1beta",
  "name": "merchantapi",
  "baseUrl": "https://merchantapi.googleapis.com/",
  "schemas": {
    "CountrySettings": {
      "id": "CountrySettings",
      "properties": {
        "localInventoryAdsEnabled": {
          "description": "True if this merchant has enabled local inventory ads in MC.",
          "type": "boolean"
        },
        "inventoryVerificationState": {
          "readOnly": true,
          "enum": [
            "VERIFICATION_STATE_UNSPECIFIED",
            "VERIFICATION_STATE_NOT_APPROVED",
            "VERIFICATION_STATE_IN_PROGRESS",
            "VERIFICATION_STATE_APPROVED"
          ],
          "enumDescriptions": [
            "Verification state unspecified.",
            "Verification state not approved.",
            "Verification state in progress.",
            "Verification state approved."
          ],
          "description": "Output only. The verification state of this merchant's inventory check.",
          "type": "string"
        },
        "productPageType": {
          "enumDescriptions": [
            "Product page type unspecified.",
            "Google hosted product page.",
            "Merchant hosted product page.",
            "Merchant hosted store specific product page."
          ],
          "readOnly": true,
          "enum": [
            "PRODUCT_PAGE_TYPE_UNSPECIFIED",
            "GOOGLE_HOSTED",
            "MERCHANT_HOSTED",
            "MERCHANT_HOSTED_STORE_SPECIFIC"
          ],
          "description": "Output only. The product page type selected by this merchant.",
          "type": "string"
        },
        "freeLocalListingsEnabled": {
          "description": "True if this merchant has enabled free local listings in MC.",
          "type": "boolean"
        },
        "instockServingVerificationState": {
          "description": "Output only. The verification state of this merchant's instock serving feature.",
          "type": "string",
          "enumDescriptions": [
            "Verification state unspecified.",
            "Verification state not approved.",
            "Verification state in progress.",
            "Verification state approved."
          ],
          "readOnly": true,
          "enum": [
            "VERIFICATION_STATE_UNSPECIFIED",
            "VERIFICATION_STATE_NOT_APPROVED",
            "VERIFICATION_STATE_IN_PROGRESS",
            "VERIFICATION_STATE_APPROVED"
          ]
        },
        "regionCode": {
          "description": "Required. The [CLDR territory code](https://github.com/unicode-org/cldr/blob/latest/common/main/en.xml) for the country for which these settings are defined.",
          "type": "string"
        },
        "pickupServingVerificationState": {
          "description": "Output only. The verification state of this merchant's pickup serving feature.",
          "type": "string",
          "enumDescriptions": [
            "Verification state unspecified.",
            "Verification state not approved.",
            "Verification state in progress.",
            "Verification state approved."
          ],
          "readOnly": true,
          "enum": [
            "VERIFICATION_STATE_UNSPECIFIED",
            "VERIFICATION_STATE_NOT_APPROVED",
            "VERIFICATION_STATE_IN_PROGRESS",
            "VERIFICATION_STATE_APPROVED"
          ]
        }
      },
      "description": "Country-specific settings for the merchant.",
      "type": "object"
    },
    "Empty": {
      "properties": {},
      "description": "A generic empty message that you can re-use to avoid defining duplicated empty messages in your APIs. A typical example is to use it as the request or the response type of an API method. For instance: service Foo { rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty); }",
      "type": "object",
      "id": "Empty"
    },
    "LfpStoreState": {
      "id": "LfpStoreState",
      "properties": {
        "matchingState": {
          "description": "Output only. The store matching state.",
          "type": "string",
          "enumDescriptions": [
            "Store matching state unspecified.",
            "The `LfpStore` is successfully matched with a Google Business Profile store.",
            "The `LfpStore` is not matched with a Google Business Profile store."
          ],
          "readOnly": true,
          "enum": [
            "STORE_MATCHING_STATE_UNSPECIFIED",
            "STORE_MATCHING_STATE_MATCHED",
            "STORE_MATCHING_STATE_FAILED"
          ]
        },
        "matchingStateHint": {
          "description": "The hint of why the matching has failed (only set if matching_state is FAILED).",
          "type": "string"
        },
        "storeCode": {
          "description": "Required. Immutable. The identifier of this store.",
          "type": "string"
        }
      },
      "description": "The state of a specific merchant's store.",
      "type": "object"
    },
    "LfpInventory": {
      "id": "LfpInventory",
      "properties": {
        "price": {
          "description": "Optional. The current price of the product.",
          "$ref": "Price"
        },
        "targetAccount": {
          "description": "Required. The Merchant Center ID of the merchant to submit the inventory for.",
          "type": "string",
          "format": "int64"
        },
        "regionCode": {
          "description": "Required. The [CLDR territory code](https://github.com/unicode-org/cldr/blob/latest/common/main/en.xml) for the country where the product is sold.",
          "type": "string"
        },
        "availability": {
          "description": "Required. Availability of the product at this store. For accepted attribute values, see the [local product inventory data specification](https://support.google.com/merchants/answer/3061342)",
          "type": "string"
        },
        "name": {
          "readOnly": true,
          "description": "Output only. Identifier. The name for the `LfpInventory` resource. Format: `accounts/{account}/lfpInventories/{target_merchant}~{store_code}~{offer}`",
          "type": "string"
        },
        "quantity": {
          "description": "Optional. Quantity of the product available at this store. Must be greater than or equal to zero.",
          "type": "string",
          "format": "int64"
        },
        "offerId": {
          "description": "Required. Immutable. A unique identifier for the product. If both inventories and sales are submitted for a merchant, this id should match for the same product. **Note**: if the merchant sells the same product new and used, they should have different IDs.",
          "type": "string"
        },
        "feedLabel": {
          "description": "Optional. The [feed label](https://developers.google.com/shopping-content/guides/products/feed-labels) for the product. If this is not set, it will default to `regionCode`.",
          "type": "string"
        },
        "pickupMethod": {
          "description": "Optional. Supported pickup method for this offer. Unless the value is \"not supported\", this field must be submitted together with `pickupSla`. For accepted attribute values, see the [local product inventory data specification](https://support.google.com/merchants/answer/3061342).",
          "type": "string"
        },
        "pickupSla": {
          "description": "Optional. Expected date that an order will be ready for pickup relative to the order date. Must be submitted together with `pickupMethod`. For accepted attribute values, see the [local product inventory data specification](https://support.google.com/merchants/answer/3061342).",
          "type": "string"
        },
        "contentLanguage": {
          "description": "Required. The two-letter ISO 639-1 language code for the item.",
          "type": "string"
        },
        "storeCode": {
          "description": "Required. The identifier of the merchant's store. Either the store code inserted through `InsertLfpStore` or the store code in the Business Profile.",
          "type": "string"
        },
        "collectionTime": {
          "format": "google-datetime",
          "description": "Optional. The time when the inventory is collected. If not set, it will be set to the time when the inventory is submitted.",
          "type": "string"
        },
        "gtin": {
          "description": "Optional. The Global Trade Item Number of the product.",
          "type": "string"
        }
      },
      "description": "Local Inventory for the merchant.",
      "type": "object"
    },
    "InventoryStats": {
      "properties": {
        "submittedInStockEntries": {
          "format": "int64",
          "description": "Number of submitted in stock entries.",
          "type": "string"
        },
        "submittedProducts": {
          "description": "Number of products from provided inventories/sales that were created from matches to existing online products provided by the merchant or to the Google catalog.",
          "type": "string",
          "format": "int64"
        },
        "submittedEntries": {
          "format": "int64",
          "description": "Number of entries (understanding entry as a pair of product and store) that were built based on provided inventories/sales and submitted to Google.",
          "type": "string"
        },
        "unsubmittedEntries": {
          "format": "int64",
          "description": "Number of entries that were built based on provided inventories/sales and couldn't be submitted to Google due to errors like missing product.",
          "type": "string"
        }
      },
      "description": "The inventory statistics for a merchant.",
      "type": "object",
      "id": "InventoryStats"
    },
    "ListLfpStoresResponse": {
      "id": "ListLfpStoresResponse",
      "properties": {
        "lfpStores": {
          "description": "The stores from the specified merchant.",
          "type": "array",
          "items": {
            "$ref": "LfpStore"
          }
        },
        "nextPageToken": {
          "description": "A token, which can be sent as `pageToken` to retrieve the next page. If this field is omitted, there are no subsequent pages.",
          "type": "string"
        }
      },
      "description": "Response message for the ListLfpStores method.",
      "type": "object"
    },
    "LfpMerchantState": {
      "id": "LfpMerchantState",
      "description": "The LFP state of a merchant.",
      "type": "object",
      "properties": {
        "countrySettings": {
          "description": "Country-specific settings for the merchant.",
          "type": "array",
          "items": {
            "$ref": "CountrySettings"
          }
        },
        "name": {
          "description": "Identifier. The name of the `LfpMerchantState` resource. Format: `accounts/{account}/lfpMerchantStates/{target_merchant}`. For example, `accounts/123456/lfpMerchantStates/567890`.",
          "type": "string"
        },
        "linkedGbps": {
          "format": "int64",
          "description": "Number of [GBPs](https://www.google.com/business/) this merchant has access to.",
          "type": "string"
        },
        "storeStates": {
          "readOnly": true,
          "description": "Output only. The state per store from the specified merchant. The field will be absent if the merchant has no stores submitted through LFP.",
          "type": "array",
          "items": {
            "$ref": "LfpStoreState"
          }
        },
        "inventoryStats": {
          "description": "The inventory statistics for the merchant. The field will be absent if the merchant has no inventory submitted through LFP.",
          "$ref": "InventoryStats"
        }
      }
    },
    "LfpStore": {
      "id": "LfpStore",
      "properties": {
        "targetAccount": {
          "description": "Required. The Merchant Center id of the merchant to submit the store for.",
          "type": "string",
          "format": "int64"
        },
        "placeId": {
          "description": "Optional. The [Google Place Id](https://developers.google.com/maps/documentation/places/web-service/place-id#id-overview) of the store location.",
          "type": "string"
        },
        "storeAddress": {
          "description": "Required. The street address of the store. Example: 1600 Amphitheatre Pkwy, Mountain View, CA 94043, USA.",
          "type": "string"
        },
        "phoneNumber": {
          "description": "Optional. The store phone number in [E.164](https://en.wikipedia.org/wiki/E.164) format. Example: `+15556767888`",
          "type": "string"
        },
        "storeName": {
          "description": "Optional. The merchant or store name.",
          "type": "string"
        },
        "storeCode": {
          "description": "Required. Immutable. A store identifier that is unique for the target merchant.",
          "type": "string"
        },
        "gcidCategory": {
          "description": "Optional. [Google My Business category id](https://support.google.com/business/answer/7249669).",
          "type": "array",
          "items": {
            "type": "string"
          }
        },
        "name": {
          "readOnly": true,
          "description": "Output only. Identifier. The name of the `LfpStore` resource. Format: `accounts/{account}/lfpStores/{target_merchant}~{store_code}`",
          "type": "string"
        },
        "matchingStateHint": {
          "readOnly": true,
          "description": "Optional. Output only. The hint of why the matching has failed. This is only set when matchingState=`STORE_MATCHING_STATE_FAILED`. Possible values are: - \"`linked-store-not-found`\": There aren't any Google Business Profile stores available for matching. - \"`store-match-not-found`\": The provided `LfpStore` couldn't be matched to any of the connected Google Business Profile stores. Merchant Center account is connected correctly and stores are available on Google Business Profile, but the `LfpStore` location address does not match with Google Business Profile stores' addresses. Update the `LfpStore` address or Google Business Profile store address to match correctly. - \"`store-match-unverified`\": The provided `LfpStore` couldn't be matched to any of the connected Google Business Profile stores, as the matched Google Business Profile store is unverified. Go through the Google Business Profile verification process to match correctly.",
          "type": "string"
        },
        "websiteUri": {
          "description": "Optional. The website URL for the store or merchant.",
          "type": "string"
        },
        "matchingState": {
          "enumDescriptions": [
            "Store matching state unspecified.",
            "The `LfpStore` is successfully matched with a Google Business Profile store.",
            "The `LfpStore` is not matched with a Google Business Profile store."
          ],
          "readOnly": true,
          "enum": [
            "STORE_MATCHING_STATE_UNSPECIFIED",
            "STORE_MATCHING_STATE_MATCHED",
            "STORE_MATCHING_STATE_FAILED"
          ],
          "description": "Optional. Output only. The state of matching to a Google Business Profile. See matchingStateHint for further details if no match is found.",
          "type": "string"
        }
      },
      "description": "A store for the merchant. This will be used to match to a store under the Google Business Profile of the target merchant. If a matching store can't be found, the inventories or sales submitted with the store code will not be used.",
      "type": "object"
    },
    "LfpSale": {
      "description": "A sale for the merchant.",
      "type": "object",
      "properties": {
        "contentLanguage": {
          "description": "Required. The two-letter ISO 639-1 language code for the item.",
          "type": "string"
        },
        "price": {
          "description": "Required. The unit price of the product.",
          "$ref": "Price"
        },
        "storeCode": {
          "description": "Required. The identifier of the merchant's store. Either a `storeCode` inserted through the API or the code of the store in the Business Profile.",
          "type": "string"
        },
        "uid": {
          "description": "Output only. System generated globally unique ID for the `LfpSale`.",
          "type": "string",
          "readOnly": true
        },
        "targetAccount": {
          "description": "Required. The Merchant Center ID of the merchant to submit the sale for.",
          "type": "string",
          "format": "int64"
        },
        "regionCode": {
          "description": "Required. The [CLDR territory code](https://github.com/unicode-org/cldr/blob/latest/common/main/en.xml) for the country where the product is sold.",
          "type": "string"
        },
        "name": {
          "readOnly": true,
          "description": "Output only. Identifier. The name of the `LfpSale` resource. Format: `accounts/{account}/lfpSales/{sale}`",
          "type": "string"
        },
        "quantity": {
          "description": "Required. The relative change of the available quantity. Negative for items returned.",
          "type": "string",
          "format": "int64"
        },
        "saleTime": {
          "format": "google-datetime",
          "description": "Required. The timestamp for the sale.",
          "type": "string"
        },
        "offerId": {
          "description": "Required. A unique identifier for the product. If both inventories and sales are submitted for a merchant, this id should match for the same product. **Note**: if the merchant sells the same product new and used, they should have different IDs.",
          "type": "string"
        },
        "gtin": {
          "description": "Required. The Global Trade Item Number of the sold product.",
          "type": "string"
        },
        "feedLabel": {
          "description": "Optional. The [feed label](https://developers.google.com/shopping-content/guides/products/feed-labels) for the product. If this is not set, it will default to `regionCode`.",
          "type": "string"
        }
      },
      "id": "LfpSale"
    },
    "ProductStatusChangeMessage": {
      "id": "ProductStatusChangeMessage",
      "properties": {
        "resourceId": {
          "description": "The product id.",
          "type": "string"
        },
        "eventTime": {
          "format": "google-datetime",
          "description": "The time at which the event was generated. If you want to order the notification messages you receive you should rely on this field not on the order of receiving the notifications.",
          "type": "string"
        },
        "expirationTime": {
          "format": "google-datetime",
          "description": "Optional. The product expiration time. This field will not be set if the notification is sent for a product deletion event.",
          "type": "string"
        },
        "attribute": {
          "enumDescriptions": [
            "Unspecified attribute",
            "Status of the changed entity"
          ],
          "description": "The attribute in the resource that changed, in this case it will be always `Status`.",
          "type": "string",
          "enum": [
            "ATTRIBUTE_UNSPECIFIED",
            "STATUS"
          ]
        },
        "changes": {
          "description": "A message to describe the change that happened to the product",
          "type": "array",
          "items": {
            "$ref": "ProductChange"
          }
        },
        "resource": {
          "description": "The product name. Format: `accounts/{account}/products/{product}`",
          "type": "string"
        },
        "resourceType": {
          "description": "The resource that changed, in this case it will always be `Product`.",
          "type": "string",
          "enumDescriptions": [
            "Unspecified resource",
            "Resource type : product"
          ],
          "enum": [
            "RESOURCE_UNSPECIFIED",
            "PRODUCT"
          ]
        },
        "account": {
          "description": "The target account that owns the entity that changed. Format : `accounts/{merchant_id}`",
          "type": "string"
        },
        "managingAccount": {
          "description": "The account that manages the merchant's account. can be the same as merchant id if it is standalone account. Format : `accounts/{service_provider_id}`",
          "type": "string"
        }
      },
      "description": "The message that the merchant will receive to notify about product status change event",
      "type": "object"
    },
    "Price": {
      "description": "The price represented as a number and currency.",
      "type": "object",
      "properties": {
        "amountMicros": {
          "format": "int64",
          "description": "The price represented as a number in micros (1 million micros is an equivalent to one's currency standard unit, for example, 1 USD = 1000000 micros).",
          "type": "string"
        },
        "currencyCode": {
          "description": "The currency of the price using three-letter acronyms according to [ISO 4217](http://en.wikipedia.org/wiki/ISO_4217).",
          "type": "string"
        }
      },
      "id": "Price"
    },
    "ProductChange": {
      "id": "ProductChange",
      "description": "The change that happened to the product including old value, new value, country code as the region code and reporting context.",
      "type": "object",
      "properties": {
        "newValue": {
          "description": "The new value of the changed resource or attribute. If empty, it means that the product was deleted. Will have one of these values : (`approved`, `pending`, `disapproved`, ``)",
          "type": "string"
        },
        "reportingContext": {
          "description": "Reporting contexts that have the change (if applicable). Currently this field supports only (`SHOPPING_ADS`, `LOCAL_INVENTORY_ADS`, `YOUTUBE_SHOPPING`, `YOUTUBE_CHECKOUT`, `YOUTUBE_AFFILIATE`) from the enum value [ReportingContextEnum](/merchant/api/reference/rest/Shared.Types/ReportingContextEnum)",
          "type": "string",
          "enumDescriptions": [
            "Not specified.",
            "[Shopping ads](https://support.google.com/merchants/answer/6149970).",
            "Deprecated: Use `DEMAND_GEN_ADS` instead. [Discovery and Demand Gen ads](https://support.google.com/merchants/answer/13389785).",
            "[Demand Gen ads](https://support.google.com/merchants/answer/13389785).",
            "[Demand Gen ads on Discover surface](https://support.google.com/merchants/answer/13389785).",
            "[Video ads](https://support.google.com/google-ads/answer/6340491).",
            "[Display ads](https://support.google.com/merchants/answer/6069387).",
            "[Local inventory ads](https://support.google.com/merchants/answer/3271956).",
            "[Vehicle inventory ads](https://support.google.com/merchants/answer/11544533).",
            "[Free product listings](https://support.google.com/merchants/answer/9199328).",
            "[Free product listings on UCP checkout](https://developers.google.com/merchant/ucp).",
            "[Free local product listings](https://support.google.com/merchants/answer/9825611).",
            "[Free local vehicle listings](https://support.google.com/merchants/answer/11544533).",
            "[Youtube Affiliate](https://support.google.com/youtube/answer/13376398).",
            "[YouTube Shopping](https://support.google.com/merchants/answer/13478370).",
            "[Cloud retail](https://cloud.google.com/solutions/retail).",
            "[Local cloud retail](https://cloud.google.com/solutions/retail).",
            "[Product Reviews](https://support.google.com/merchants/answer/14620732).",
            "[Merchant Reviews](https://developers.google.com/merchant-review-feeds).",
            "YouTube Checkout ."
          ],
          "enumDeprecated": [
            false,
            false,
            true,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false,
            false
          ],
          "enum": [
            "REPORTING_CONTEXT_ENUM_UNSPECIFIED",
            "SHOPPING_ADS",
            "DISCOVERY_ADS",
            "DEMAND_GEN_ADS",
            "DEMAND_GEN_ADS_DISCOVER_SURFACE",
            "VIDEO_ADS",
            "DISPLAY_ADS",
            "LOCAL_INVENTORY_ADS",
            "VEHICLE_INVENTORY_ADS",
            "FREE_LISTINGS",
            "FREE_LISTINGS_UCP_CHECKOUT",
            "FREE_LOCAL_LISTINGS",
            "FREE_LOCAL_VEHICLE_LISTINGS",
            "YOUTUBE_AFFILIATE",
            "YOUTUBE_SHOPPING",
            "CLOUD_RETAIL",
            "LOCAL_CLOUD_RETAIL",
            "PRODUCT_REVIEWS",
            "MERCHANT_REVIEWS",
            "YOUTUBE_CHECKOUT"
          ]
        },
        "oldValue": {
          "description": "The old value of the changed resource or attribute. If empty, it means that the product was created. Will have one of these values : (`approved`, `pending`, `disapproved`, ``)",
          "type": "string"
        },
        "regionCode": {
          "description": "Countries that have the change (if applicable). Represented in the ISO 3166 format.",
          "type": "string"
        }
      }
    }
  },
  "ownerDomain": "google.com",
  "ownerName": "Google",
  "title": "Merchant API",
  "servicePath": "",
  "protocol": "rest",
  "documentationLink": "https://developers.google.com/merchant/api",
  "batchPath": "batch",
  "kind": "discovery#restDescription",
  "fullyEncodeReservedExpansion": true,
  "version_module": true,
  "rootUrl": "https://merchantapi.googleapis.com/",
  "discoveryVersion": "v1",
  "resources": {
    "accounts": {
      "resources": {
        "lfpStores": {
          "methods": {
            "get": {
              "scopes": [
                "https://www.googleapis.com/auth/content"
              ],
              "flatPath": "lfp/v1beta/accounts/{accountsId}/lfpStores/{lfpStoresId}",
              "parameters": {
                "name": {
                  "description": "Required. The name of the store to retrieve. Format: `accounts/{account}/lfpStores/{target_merchant}~{store_code}`",
                  "type": "string",
                  "location": "path",
                  "required": true,
                  "pattern": "^accounts/[^/]+/lfpStores/[^/]+$"
                }
              },
              "id": "merchantapi.accounts.lfpStores.get",
              "parameterOrder": [
                "name"
              ],
              "response": {
                "$ref": "LfpStore"
              },
              "path": "lfp/v1beta/{+name}",
              "httpMethod": "GET",
              "description": "Retrieves information about a store."
            },
            "insert": {
              "parameters": {
                "parent": {
                  "pattern": "^accounts/[^/]+$",
                  "description": "Required. The LFP provider account Format: `accounts/{account}`",
                  "type": "string",
                  "location": "path",
                  "required": true
                }
              },
              "request": {
                "$ref": "LfpStore"
              },
              "id": "merchantapi.accounts.lfpStores.insert",
              "scopes": [
                "https://www.googleapis.com/auth/content"
              ],
              "flatPath": "lfp/v1beta/accounts/{accountsId}/lfpStores:insert",
              "path": "lfp/v1beta/{+parent}/lfpStores:insert",
              "httpMethod": "POST",
              "description": "Inserts a store for the target merchant. If the store with the same store code already exists, it will be replaced.",
              "parameterOrder": [
                "parent"
              ],
              "response": {
                "$ref": "LfpStore"
              }
            },
            "delete": {
              "httpMethod": "DELETE",
              "description": "Deletes a store for a target merchant.",
              "path": "lfp/v1beta/{+name}",
              "response": {
                "$ref": "Empty"
              },
              "parameterOrder": [
                "name"
              ],
              "id": "merchantapi.accounts.lfpStores.delete",
              "parameters": {
                "name": {
                  "pattern": "^accounts/[^/]+/lfpStores/[^/]+$",
                  "location": "path",
                  "description": "Required. The name of the store to delete for the target merchant account. Format: `accounts/{account}/lfpStores/{target_merchant}~{store_code}`",
                  "type": "string",
                  "required": true
                }
              },
              "flatPath": "lfp/v1beta/accounts/{accountsId}/lfpStores/{lfpStoresId}",
              "scopes": [
                "https://www.googleapis.com/auth/content"
              ]
            },
            "list": {
              "flatPath": "lfp/v1beta/accounts/{accountsId}/lfpStores",
              "scopes": [
                "https://www.googleapis.com/auth/content"
              ],
              "id": "merchantapi.accounts.lfpStores.list",
              "parameters": {
                "pageToken": {
                  "location": "query",
                  "description": "Optional. A page token, received from a previous `ListLfpStoresRequest` call. Provide the page token to retrieve the subsequent page. When paginating, all other parameters provided to `ListLfpStoresRequest` must match the call that provided the page token. The token returned as nextPageToken in the response to the previous request.",
                  "type": "string"
                },
                "parent": {
                  "pattern": "^accounts/[^/]+$",
                  "required": true,
                  "description": "Required. The LFP partner. Format: `accounts/{account}`",
                  "type": "string",
                  "location": "path"
                },
                "targetAccount": {
                  "location": "query",
                  "description": "Required. The Merchant Center id of the merchant to list stores for.",
                  "type": "string",
                  "format": "int64"
                },
                "pageSize": {
                  "location": "query",
                  "description": "Optional. The maximum number of `LfpStore` resources for the given account to return. The service returns fewer than this value if the number of stores for the given account is less than the `pageSize`. The default value is 250. The maximum value is 1000; If a value higher than the maximum is specified, then the `pageSize` will default to the maximum.",
                  "type": "integer",
                  "format": "int32"
                }
              },
              "response": {
                "$ref": "ListLfpStoresResponse"
              },
              "parameterOrder": [
                "parent"
              ],
              "httpMethod": "GET",
              "description": "Lists the stores of the target merchant, specified by the filter in `ListLfpStoresRequest`.",
              "path": "lfp/v1beta/{+parent}/lfpStores"
            }
          }
        },
        "lfpSales": {
          "methods": {
            "insert": {
              "path": "lfp/v1beta/{+parent}/lfpSales:insert",
              "httpMethod": "POST",
              "description": "Inserts a `LfpSale` for the given merchant.",
              "parameterOrder": [
                "parent"
              ],
              "response": {
                "$ref": "LfpSale"
              },
              "parameters": {
                "parent": {
                  "pattern": "^accounts/[^/]+$",
                  "required": true,
                  "location": "path",
                  "description": "Required. The LFP provider account. Format: `accounts/{lfp_partner}`",
                  "type": "string"
                }
              },
              "request": {
                "$ref": "LfpSale"
              },
              "id": "merchantapi.accounts.lfpSales.insert",
              "scopes": [
                "https://www.googleapis.com/auth/content"
              ],
              "flatPath": "lfp/v1beta/accounts/{accountsId}/lfpSales:insert"
            }
          }
        },
        "lfpInventories": {
          "methods": {
            "insert": {
              "id": "merchantapi.accounts.lfpInventories.insert",
              "parameters": {
                "parent": {
                  "pattern": "^accounts/[^/]+$",
                  "required": true,
                  "location": "path",
                  "description": "Required. The LFP provider account. Format: `accounts/{account}`",
                  "type": "string"
                }
              },
              "request": {
                "$ref": "LfpInventory"
              },
              "scopes": [
                "https://www.googleapis.com/auth/content"
              ],
              "flatPath": "lfp/v1beta/accounts/{accountsId}/lfpInventories:insert",
              "path": "lfp/v1beta/{+parent}/lfpInventories:insert",
              "httpMethod": "POST",
              "description": "Inserts a `LfpInventory` resource for the given target merchant account. If the resource already exists, it will be replaced. The inventory automatically expires after 30 days.",
              "parameterOrder": [
                "parent"
              ],
              "response": {
                "$ref": "LfpInventory"
              }
            }
          }
        },
        "lfpMerchantStates": {
          "methods": {
            "get": {
              "httpMethod": "GET",
              "description": "Gets the LFP state of a merchant",
              "path": "lfp/v1beta/{+name}",
              "response": {
                "$ref": "LfpMerchantState"
              },
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "pattern": "^accounts/[^/]+/lfpMerchantStates/[^/]+$",
                  "location": "path",
                  "description": "Required. The name of the state to retrieve. Format: `accounts/{account}/lfpMerchantStates/{target_merchant}`. For example, `accounts/123456/lfpMerchantStates/567890`.",
                  "type": "string",
                  "required": true
                }
              },
              "id": "merchantapi.accounts.lfpMerchantStates.get",
              "flatPath": "lfp/v1beta/accounts/{accountsId}/lfpMerchantStates/{lfpMerchantStatesId}",
              "scopes": [
                "https://www.googleapis.com/auth/content"
              ]
            }
          }
        }
      }
    }
  },
  "revision": "20260415"
}
