Guidelines for feed delivery
Stay organized with collections
Save and categorize content based on your preferences.
This guide describes how to provide your Micromobility feed to Google after it's
generated. For a description about how to create your feed, refer to the
specifications in the Reference tab.
Feed guidelines
As part of the process to send your generated Micromobility feed to Google, be
aware of the following process and guidelines:
Ensure that the bike availability and dynamic fare data, where applicable,
are up-to-date. To do so, you must upload a new feed version to the GBFS feed
host every 30 seconds. Also, the latency to retrieve the data must not exceed
30 seconds.
To deliver your feed to Google, you must support HTTP GET.
Feed delivery with HTTP GET
Google fetches the feed from the configured location with an HTTPS GET
request and supports the following authentication methods:
- HTTP Digest Authentication: If you implement this, email the configured
username and password to Micromobility partner support.
- Custom HTTP header fields: For this to be supported, as part of your
request to Google, send the required header fields and values that you need.
- GET parameters: If additional GET parameters are required, add them to
the host address before you email it to Micromobility partner support.
To optimize file size during transfer, Google supports gzip compression in the
HTTP header. Specifically, Google sends Accept-Encoding: gzip, deflate
in
the HTTP
request header and accepts the response with the HTTP
header
Content-Encoding: gzip
.
After you determine the host location and details, email the configuration
details to Micromobility partner support.
Feed sharding
To shard a feed is to break the whole feed into multiple non-intersecting
subsets. Depending on your backend systems, fleet types, and sizes,
sharding might be necessary.
For technical details on when and how to shard your feed, refer to
Feed sharding in the Reference section.
Google will use the same mechanism to fetch both sharded and unsharded feeds as
described in Feed delivery with HTTP GET.
After you determine the host location and details for each shard, email the
configuration details of each shard along with the metro areas that the shard
covers to Micromobility partner support.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2023-10-03 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2023-10-03 UTC."],[[["\u003cp\u003eThis guide explains how to provide your generated Micromobility feed to Google, including details on feed guidelines and delivery methods.\u003c/p\u003e\n"],["\u003cp\u003eYou need to ensure bike availability and dynamic fare data are up-to-date by uploading a new feed version every 30 seconds with a retrieval latency of no more than 30 seconds.\u003c/p\u003e\n"],["\u003cp\u003eGoogle fetches your feed using HTTP GET and supports HTTP Digest Authentication, custom HTTP header fields, and GET parameters for authentication.\u003c/p\u003e\n"],["\u003cp\u003eFor larger feeds, sharding may be necessary, and details on how to shard your feed can be found in the Feed sharding section of the Reference tab.\u003c/p\u003e\n"],["\u003cp\u003eAfter configuring your feed or shards, email the configuration details, including host location and authentication methods to Micromobility partner support.\u003c/p\u003e\n"]]],["To send a Micromobility feed to Google, ensure bike availability and fare data are updated every 30 seconds via a new feed version. Use HTTP GET for feed delivery, supporting authentication methods like HTTP Digest, custom headers, or GET parameters. Google supports gzip compression for optimization. For large feeds, sharding is possible. After determining the host location and details, email the configuration and any required credentials or information to Micromobility partner support.\n"],null,["# Guidelines for feed delivery\n\nThis guide describes how to provide your Micromobility feed to Google after it's\ngenerated. For a description about how to create your feed, refer to the\nspecifications in the [Reference](/micromobility/reference/introduction) tab.\n\nFeed guidelines\n---------------\n\nAs part of the process to send your generated Micromobility feed to Google, be\naware of the following process and guidelines:\n\n- Ensure that the bike availability and dynamic fare data, where applicable,\n are up-to-date. To do so, you must upload a new feed version to the GBFS feed\n host every 30 seconds. Also, the latency to retrieve the data must not exceed\n 30 seconds.\n\n- To deliver your feed to Google, you must support HTTP GET.\n\n### Feed delivery with HTTP GET\n\nGoogle fetches the feed from the configured location with an `HTTPS GET`\nrequest and supports the following authentication methods:\n\n- **HTTP Digest Authentication:** If you implement this, email the configured username and password to [Micromobility partner support](mailto:micromobility-partner-support@google.com).\n- **Custom HTTP header fields:** For this to be supported, as part of your request to Google, send the required header fields and values that you need.\n- **GET parameters:** If additional GET parameters are required, add them to the host address before you email it to [Micromobility partner support](mailto:micromobility-partner-support@google.com).\n\nTo optimize file size during transfer, Google supports gzip compression in the\nHTTP header. Specifically, Google sends `Accept-Encoding: gzip, deflate` in\nthe `HTTP` request header and accepts the response with the `HTTP` header\n`Content-Encoding: gzip`.\n\nAfter you determine the host location and details, email the configuration\ndetails to [Micromobility partner support](mailto:micromobility-partner-support@google.com).\n\n### Feed sharding\n\nTo *shard* a feed is to break the whole feed into multiple non-intersecting\nsubsets. Depending on your backend systems, fleet types, and sizes,\nsharding might be necessary.\n\nFor technical details on when and how to shard your feed, refer to\n[Feed sharding](/micromobility/reference/sharding) in the Reference section.\n\nGoogle will use the same mechanism to fetch both sharded and unsharded feeds as\ndescribed in [Feed delivery with HTTP GET](#feed-delivery-with-http-get).\n\nAfter you determine the host location and details for each shard, email the\nconfiguration details of each shard along with the metro areas that the shard\ncovers to [Micromobility partner support](mailto:micromobility-partner-support@google.com)."]]