The feeds format is described with the
protocol buffer 3 syntax but you can upload your feeds
as the corresponding JSON format.
Please reference the feed samples below
We recommend that you upload the feeds in JSON format.
Upload the feeds to your SFTP server
Upload your feeds to the sandbox environment. To do so, refer to the
usernames within the
Partner Portal feed configuration page. The Google SFTP server is
available at sftp://partnerupload.google.com on port
19321.
We recommend that you give the files you upload unique names. For instance,
it can be helpful to append each filename with a timestamp. This helps to
troubleshoot issues and query for feed status.
Ensure you are uploading all feeds to the 'Generic' account.
Each feed needs to be uploaded through SFTP separately with a fileset descriptor file.
The filename of a fileset descriptor should be <feed_name>-<
generation_timestamp>.filesetdesc.json,
in which <feed_name> should correspond to the following for each feed:
[null,null,["Last updated 2025-08-27 UTC."],[[["\u003cp\u003eAppointments Redirect integration requires regular data feeds to Google, including Entity, Action, and Services feeds, for content to be displayed.\u003c/p\u003e\n"],["\u003cp\u003eFeeds must adhere to content guidelines and be uploaded in JSON format to the designated SFTP dropbox following specific naming conventions.\u003c/p\u003e\n"],["\u003cp\u003eGoogle evaluates submitted feeds for quality, completeness, and adherence to specifications before making content live.\u003c/p\u003e\n"],["\u003cp\u003ePartners should pre-evaluate their feeds for required fields and action links before submission to ensure a smoother integration process.\u003c/p\u003e\n"],["\u003cp\u003eEach merchant must have at least one \u003ccode\u003eaction_link\u003c/code\u003e and one service with at least one \u003ccode\u003eaction_link\u003c/code\u003e defined within the feeds.\u003c/p\u003e\n"]]],["The Appointments Redirect integration requires three regular data feeds: Entity, Action, and Services, each uploaded every 24 hours. These feeds, describing entities, deep links, and merchant services respectively, are formatted in protocol buffer 3 syntax or JSON. Feeds are uploaded via SFTP to the designated \"Generic\" sandbox dropbox, using a specific file naming convention with a fileset descriptor. Google then evaluates the uploaded feeds for quality, completeness, and adherence to specifications before they are used.\n"],null,["The following describes the details of the Actions Center integration\nprocess that are unique to Appointments Redirect.\n\nKey Guidance\n\nThe following are examples and tutorial covering features that are required by\nthe Appointments Redirect integration:\n\nFeeds must be provided to Google on a regular basis for the data to be directly shown on Google.\nThe following feeds are needed.\n\n| Feed | Description | Frequency |\n|-------------------------------------------------------------------------------------------|----------------------------------------------------------|---------------------|\n| [Entity](/actions-center/verticals/appointments/redirect/reference/feeds/entity-feed) | Describes your entities. | Once every 24 hours |\n| [Action](/actions-center/verticals/appointments/redirect/reference/feeds/action-feed) | Describes your deep links associated with your entities. | Once every 24 hours |\n| [Services](/actions-center/verticals/appointments/redirect/reference/feeds/services-feed) | Describes services your merchants provide | Once every 24 hours |\n\n| **Objective:** When you provide service names and descriptions, adhere to our [Content editorial guidelines](/actions-center/verticals/appointments/redirect/support#content-editorial-guidelines).\n\nThe feeds format is described with the\n[protocol buffer 3 syntax](/protocol-buffers/docs/proto3) but you can upload your feeds\nas the corresponding JSON format.\nPlease reference the feed samples below\n\n- [Entity Feed](/actions-center/verticals/appointments/redirect/reference/feeds/entity-feed)\n- [Action Feed](/actions-center/verticals/appointments/redirect/reference/feeds/action-feed)\n- [Services Feed](/actions-center/verticals/appointments/redirect/reference/feeds/services-feed)\n\nWe recommend that you upload the feeds in JSON format.\n\n\u003cbr /\u003e\n\nUpload the feeds to your SFTP server\n\nUpload your feeds to the sandbox environment. To do so, refer to the\nusernames within the\n[Partner Portal feed configuration](/actions-center/verticals/appointments/redirect/partner-portal/testing/feeds) page. The Google SFTP server is\navailable at `sftp://partnerupload.google.com` on port\n`19321`.\n| **Note:** To access the sandbox, make sure that the [environment switcher](/actions-center/verticals/appointments/redirect/partner-portal/overview/environment-switcher) on the top is set to Sandbox.\n\nWe recommend that you give the files you upload unique names. For instance,\nit can be helpful to append each filename with a timestamp. This helps to\ntroubleshoot issues and query for feed status.\n| **Note:** All feeds should be uploaded to the **Generic** SFTP server.\nEnsure you are uploading all feeds to the 'Generic' account.\n\n\nEach feed needs to be uploaded through SFTP separately with a fileset descriptor file.\nThe filename of a fileset descriptor should be **\\\u003cfeed_name\\\u003e-\\\u003c\ngeneration_timestamp\\\u003e.filesetdesc.json** ,\nin which **\\\u003cfeed_name\\\u003e** should correspond to the following for each feed:\n\n| Feed | FilesetDescriptor.name |\n|---------|-------------------------------|\n| Entity | `reservewithgoogle.entity` |\n| Action | `reservewithgoogle.action.v2` |\n| Service | `glam.service.v0` |\n\n\u003cbr /\u003e\n\n\nVisit [Using the Generic feed SFTP server](/actions-center/verticals/appointments/redirect/reference/tutorials/generic-sftp)\nfor more information.\n| **Warning:** Upload your feeds to the production servers only after Google has tested and confirmed your feeds in the sandbox environment.\n\nGoogle evaluates feeds\n\nOnce you upload your feeds, Google processes and evaluates them for quality\nand completeness. We look at several factors:\n\n- Feeds meet the specifications.\n- Feeds include all required fields.\n- Each merchant has at least one `action_link` and one service with at least `action_link` defined.\n- The majority of your merchant data matches with Google Maps locations.\n\n| **Note:** To ensure a smooth integration, perform a pre-evaluation of the factors above, except for the last one, before you submit your feeds."]]