Manage Local Feeds Partnership (LFP) providers

The Local Feeds Partnership program is a way for retailers to participate in Local Inventory Ads and Free Local Listings without having to create their own primary and local product inventory feeds. Trusted data providers can provide sales or inventory data to Google on behalf of retailers.

Prerequisites

To use the API methods in this section, establish your Local Inventory Ads (LIA) or Free Local Listing (FLL) programs first. For more details, see Manage omnichannel settings .

Find available LFP providers

To retrieve all the available LFP providers in a country, use lfpProviders.findLfpProviders .

  POST 
 https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/omnichannelSettings/{REGION_CODE}/lfpProviders:find 
 

Replace the following:

A sample successful response:

  200 OK 
 { 
 "lsfProviders": [ 
 { 
 "name": "accounts/{ACCOUNT}/omnichannelSettings/{REGION_CODE}/lsfProviders/12345", 
 "regionCode": {REGION_CODE}, 
 "displayName": "LFP Provider 1" 
 }, { 
 "name": "accounts/{ACCOUNT}/omnichannelSettings/{REGION_CODE}/lsfProviders/67890", 
 "regionCode": {REGION_CODE}, 
 "displayName": "LFP Provider 6" 
 } 
 ], 
 "nextPageToken": 50 
 } 
 

Here is a code sample:

  package 
  
 shopping.merchant.samples.accounts.v1 
 ; 
 // [START merchantapi_find_lfp_providers] 
 import 
  
 com.google.api.gax.core.FixedCredentialsProvider 
 ; 
 import 
  
 com.google.auth.oauth2.GoogleCredentials 
 ; 
 import 
  
 com.google.shopping.merchant.accounts.v1.FindLfpProvidersRequest 
 ; 
 import 
  
 com.google.shopping.merchant.accounts.v1.LfpProvider 
 ; 
 import 
  
 com.google.shopping.merchant.accounts.v1.LfpProvidersServiceClient 
 ; 
 import 
  
 com.google.shopping.merchant.accounts.v1.LfpProvidersServiceClient.FindLfpProvidersPagedResponse 
 ; 
 import 
  
 com.google.shopping.merchant.accounts.v1.LfpProvidersServiceSettings 
 ; 
 import 
  
 com.google.shopping.merchant.accounts.v1.OmnichannelSettingName 
 ; 
 import 
  
 shopping.merchant.samples.utils.Authenticator 
 ; 
 import 
  
 shopping.merchant.samples.utils.Config 
 ; 
 /** This class demonstrates how to get the Lfp Providers for a given Merchant Center account */ 
 public 
  
 class 
 FindLfpProvidersSample 
  
 { 
  
 public 
  
 static 
  
 void 
  
 findLfpProviders 
 ( 
 Config 
  
 config 
 , 
  
 String 
  
 regionCode 
 ) 
  
 throws 
  
 Exception 
  
 { 
  
 // Obtains OAuth token based on the user's configuration. 
  
 GoogleCredentials 
  
 credential 
  
 = 
  
 new 
  
 Authenticator 
 (). 
 authenticate 
 (); 
  
 // Creates service settings using the retrieved credentials. 
  
 LfpProvidersServiceSettings 
  
 lfpProvidersServiceSettings 
  
 = 
  
 LfpProvidersServiceSettings 
 . 
 newBuilder 
 () 
  
 . 
 setCredentialsProvider 
 ( 
 FixedCredentialsProvider 
 . 
 create 
 ( 
 credential 
 )) 
  
 . 
 build 
 (); 
  
 // Gets the account ID from the config file. 
  
 String 
  
 accountId 
  
 = 
  
 config 
 . 
 getAccountId 
 (). 
 toString 
 (); 
  
 // Creates parent to identify the omnichannelSetting from which to list all Lfp Providers. 
  
 String 
  
 parent 
  
 = 
  
 OmnichannelSettingName 
 . 
 newBuilder 
 () 
  
 . 
 setAccount 
 ( 
 accountId 
 ) 
  
 . 
 setOmnichannelSetting 
 ( 
 regionCode 
 ) 
  
 . 
 build 
 () 
  
 . 
 toString 
 (); 
  
 // Calls the API and catches and prints any network failures/errors. 
  
 try 
  
 ( 
 LfpProvidersServiceClient 
  
 lfpProvidersServiceClient 
  
 = 
  
 LfpProvidersServiceClient 
 . 
 create 
 ( 
 lfpProvidersServiceSettings 
 )) 
  
 { 
  
 FindLfpProvidersRequest 
  
 request 
  
 = 
  
 FindLfpProvidersRequest 
 . 
 newBuilder 
 (). 
 setParent 
 ( 
 parent 
 ). 
 build 
 (); 
  
 System 
 . 
 out 
 . 
 println 
 ( 
 "Sending find LFP providers request:" 
 ); 
  
 FindLfpProvidersPagedResponse 
  
 response 
  
 = 
  
 lfpProvidersServiceClient 
 . 
 findLfpProviders 
 ( 
 request 
 ); 
  
 int 
  
 count 
  
 = 
  
 0 
 ; 
  
 // Iterates over all the entries in the response. 
  
 for 
  
 ( 
 LfpProvider 
  
 lfpProvider 
  
 : 
  
 response 
 . 
 iterateAll 
 ()) 
  
 { 
  
 System 
 . 
 out 
 . 
 println 
 ( 
 lfpProvider 
 ); 
  
 count 
 ++ 
 ; 
  
 } 
  
 System 
 . 
 out 
 . 
 println 
 ( 
 String 
 . 
 format 
 ( 
 "The following count of elements were returned: %d" 
 , 
  
 count 
 )); 
  
 } 
  
 catch 
  
 ( 
 Exception 
  
 e 
 ) 
  
 { 
  
 System 
 . 
 out 
 . 
 println 
 ( 
 "An error has occurred: " 
 ); 
  
 System 
 . 
 out 
 . 
 println 
 ( 
 e 
 ); 
  
 } 
  
 } 
  
 public 
  
 static 
  
 void 
  
 main 
 ( 
 String 
 [] 
  
 args 
 ) 
  
 throws 
  
 Exception 
  
 { 
  
 Config 
  
 config 
  
 = 
  
 Config 
 . 
 load 
 (); 
  
 // The country you're targeting at. 
  
 String 
  
 regionCode 
  
 = 
  
 "{REGION_CODE}" 
 ; 
  
 findLfpProviders 
 ( 
 config 
 , 
  
 regionCode 
 ); 
  
 } 
 } 
 // [END merchantapi_find_lfp_providers] 
 

To build an LFP partnership, use lfpProviders.LinkLfpProvider :

  POST 
 https://merchantapi.googleapis.com/accounts/v1/accounts/{ACCOUNT_ID}/omnichannelSettings/{REGION_CODE}/lfpProviders/{LFP_PROVIDER}:linkLfpProvider 
 { 
 "externalAccountId": "{EXTERNAL_ACCOUNT_ID}", 
 } 
 

Replace the following:

  • {ACCOUNT_ID} : The unique identifier of your Merchant Center account
  • {LFP_PROVIDER} : The LFP provider ID returned in the previous step. For example, it would be 12345 for LFP Provider 1.
  • {EXTERNAL_ACCOUNT_ID} : The external account ID by which the merchant is known to the LFP provider.

This code sample shows how to link to an LFP provider:

  package 
  
 shopping.merchant.samples.accounts.v1 
 ; 
 // [START merchantapi_link_lfp_provider] 
 import 
  
 com.google.api.gax.core.FixedCredentialsProvider 
 ; 
 import 
  
 com.google.auth.oauth2.GoogleCredentials 
 ; 
 import 
  
 com.google.shopping.merchant.accounts.v1.LfpProvidersServiceClient 
 ; 
 import 
  
 com.google.shopping.merchant.accounts.v1.LfpProvidersServiceSettings 
 ; 
 import 
  
 com.google.shopping.merchant.accounts.v1.LinkLfpProviderRequest 
 ; 
 import 
  
 shopping.merchant.samples.utils.Authenticator 
 ; 
 /** This class demonstrates how to link the Lfp Providers for a given Merchant Center account */ 
 public 
  
 class 
 LinkLfpProviderSample 
  
 { 
  
 public 
  
 static 
  
 void 
  
 linkLfpProvider 
 ( 
 String 
  
 lfpProviderName 
 , 
  
 String 
  
 externalAccountId 
 ) 
  
 throws 
  
 Exception 
  
 { 
  
 // Obtains OAuth token based on the user's configuration. 
  
 GoogleCredentials 
  
 credential 
  
 = 
  
 new 
  
 Authenticator 
 (). 
 authenticate 
 (); 
  
 // Creates service settings using the retrieved credentials. 
  
 LfpProvidersServiceSettings 
  
 lfpProvidersServiceSettings 
  
 = 
  
 LfpProvidersServiceSettings 
 . 
 newBuilder 
 () 
  
 . 
 setCredentialsProvider 
 ( 
 FixedCredentialsProvider 
 . 
 create 
 ( 
 credential 
 )) 
  
 . 
 build 
 (); 
  
 // Calls the API and catches and prints any network failures/errors. 
  
 try 
  
 ( 
 LfpProvidersServiceClient 
  
 lfpProvidersServiceClient 
  
 = 
  
 LfpProvidersServiceClient 
 . 
 create 
 ( 
 lfpProvidersServiceSettings 
 )) 
  
 { 
  
 LinkLfpProviderRequest 
  
 request 
  
 = 
  
 LinkLfpProviderRequest 
 . 
 newBuilder 
 () 
  
 . 
 setName 
 ( 
 lfpProviderName 
 ) 
  
 . 
 setExternalAccountId 
 ( 
 externalAccountId 
 ) 
  
 . 
 build 
 (); 
  
 System 
 . 
 out 
 . 
 println 
 ( 
 "Sending link lfp provider request:" 
 ); 
  
 // Empty response returned on success. 
  
 lfpProvidersServiceClient 
 . 
 linkLfpProvider 
 ( 
 request 
 ); 
  
 System 
 . 
 out 
 . 
 println 
 ( 
 String 
 . 
 format 
 ( 
 "Successfully linked to LFP provider: %s" 
 , 
  
 lfpProviderName 
 )); 
  
 } 
  
 catch 
  
 ( 
 Exception 
  
 e 
 ) 
  
 { 
  
 System 
 . 
 out 
 . 
 println 
 ( 
 "An error has occurred: " 
 ); 
  
 System 
 . 
 out 
 . 
 println 
 ( 
 e 
 ); 
  
 } 
  
 } 
  
 public 
  
 static 
  
 void 
  
 main 
 ( 
 String 
 [] 
  
 args 
 ) 
  
 throws 
  
 Exception 
  
 { 
  
 // The name of the lfp provider you want to link, returned from `lfpProviders.findLfpProviders`. 
  
 // It's of the form 
  
 // "accounts/{account_id}/omnichannelSettings/{omnichannel_settings}/lfpProviders/{lfp_provider}". 
  
 String 
  
 lfpProviderName 
  
 = 
  
 "{LFP_PROVIDER_NAME}" 
 ; 
  
 // External account ID by which this merchant is known to the LFP provider. 
  
 String 
  
 externalAccountId 
  
 = 
  
 "{EXTERNAL_ACCOUNT_ID}" 
 ; 
  
 linkLfpProvider 
 ( 
 lfpProviderName 
 , 
  
 externalAccountId 
 ); 
  
 } 
 } 
 // [END merchantapi_link_lfp_provider] 
 ``` 
  
 You 
  
 can 
  
 check 
  
 your 
  
 LFP 
  
 status 
  
 by 
  
 calling 
  
 ` 
 omnichannelSettings 
 . 
 get 
 ` 
  
 and 
 checking 
  
 the 
  
 ` 
 LfpLink 
 ` 
  
 field 
 . 
 To 
  
 learn 
  
 more 
  
 about 
  
 how 
  
 to 
  
 use 
  
 LFP 
 , 
  
 see 
  
 [ 
 Local 
  
 feeds 
  
 partnership 
 API 
 ] 
 ( 
 https 
 : 
 //developers.google.com/merchant/api/guides/local-feeds-partnership/overview). 
 
Design a Mobile Site
View Site in Mobile | Classic
Share by: