Reference documentation and code samples for the Cloud Firestore API module Google::Cloud::Firestore.
Cloud Firestore
Cloud Firestore is a NoSQL document database built for automatic scaling, high performance, and ease of application development. While the Cloud Firestore interface has many of the same features as traditional databases, as a NoSQL database it differs from them in the way it describes relationships between data objects.
See Firestore Overview .
Methods
.configure
def
self
.
configure
()
-
>
Google
::
Cloud
::
Config
Configure the Google Cloud Firestore library.
The following Firestore configuration parameters are supported:
-
project_id- (String) Identifier for a Firestore project. (The parameterprojectis considered deprecated, but may also be used.) -
credentials- (String, Hash, Google::Auth::Credentials) The path to the keyfile as a String, the contents of the keyfile as a Hash, or a Google::Auth::Credentials object. (See Credentials ) (The parameterkeyfileis considered deprecated, but may also be used.) -
scope- (String, Array -
quota_project- (String) The project ID for a project that can be used by client libraries for quota and billing purposes. -
timeout- (Integer) Default timeout to use in requests. -
endpoint- (String) Override of the endpoint host name, ornilto use the default endpoint. -
emulator_host- (String) Host name of the emulator. Defaults toENV["FIRESTORE_EMULATOR_HOST"]
- (Google::Cloud.configure.firestore)
- (Google::Cloud::Config) — The configuration object the Google::Cloud::Firestore library uses.
.new
def
self
.
new
(
project_id
:
nil
,
credentials
:
nil
,
scope
:
nil
,
timeout
:
nil
,
endpoint
:
nil
,
emulator_host
:
nil
,
database_id
:
nil
,
transport
:
nil
,
project
:
nil
,
keyfile
:
nil
)
-
>
Google
::
Cloud
::
Firestore
::
Client
Creates a new object for connecting to the Firestore service. Each call creates a new connection.
For more information on connecting to Google Cloud see the Authentication Guide .
- project_id(String) (defaults to: nil) — Identifier for a Firestore project. If not present, the default project for the credentials is used.
- credentials(Google::Auth::Credentials) (defaults to: nil)
— A Google::Auth::Credentials
object. (See Credentials
)
@note Warning: Passing a
Stringto a keyfile path or aHashof credentials is deprecated. Providing an unvalidated credential configuration to Google APIs can compromise the security of your systems and data.@example
# The recommended way to provide credentials is to use the
make_credsmethod # on the appropriate credentials class for your environment.require "googleauth"
credentials = ::Google::Auth::ServiceAccountCredentials.make_creds( json_key_io: ::File.open("/path/to/keyfile.json") )
firestore = Google::Cloud::Firestore.new( project_id: "my-project-id", credentials: credentials )
- scope(String, Array<String>) (defaults to: nil)
—
The OAuth 2.0 scopes controlling the set of resources and operations that the connection can access. See Using OAuth 2.0 to Access Google APIs .
The default scope is:
-
https://www.googleapis.com/auth/datastore
-
- timeout(Integer) (defaults to: nil) — Default timeout to use in requests. Optional.
- endpoint(String) (defaults to: nil) — Override of the endpoint host name. Optional. If the param is nil, uses the default endpoint.
- emulator_host(String) (defaults to: nil)
— Firestore emulator host. Optional.
If the param is nil, uses the value of the
emulator_hostconfig. - database_id(String) (defaults to: nil) — Identifier for a Firestore database. If not present, the default database of the project is used.
- transport(:grpc, :rest) (defaults to: nil)
— Which transport to use to communicate
with the server. Defaults to
:grpc. - project(String) (defaults to: nil)
— Alias for the
project_idargument. Deprecated. - keyfile(String) (defaults to: nil)
— Alias for the
credentialsargument. Deprecated.
- (ArgumentError)
require "google/cloud/firestore" firestore = Google :: Cloud :: Firestore . new
Constants
VERSION
value: "3.1.1".freeze

