This page shows how to get started with the Cloud Client Libraries for the Datastore API. Read more about the client libraries for Cloud APIs, including the older Google API Client Libraries, in Client Libraries Explained.
Installing the client library
C#
For more information, see Setting Up a C# Development Environment.
Install-Package Google.Cloud.Datastore.V1
Go
For more information, see Setting Up a Go Development Environment.
go get cloud.google.com/go/datastore
Java
For more information, see Setting Up a Java Development Environment.
If you are using Maven, add
the following to your pom.xml
file. For more information about
BOMs, see The Google Cloud Platform Libraries BOM.
If you are using Gradle, add the following to your dependencies:
If you are using sbt, add the following to your dependencies:
If you're using Visual Studio Code, IntelliJ, or Eclipse, you can add client libraries to your project using the following IDE plugins:
The plugins provide additional functionality, such as key management for service accounts. Refer to each plugin's documentation for details.
Node.js
For more information, see Setting Up a Node.js Development Environment.
npm install --save @google-cloud/datastore
PHP
For more information, see Using PHP on Google Cloud.
composer require google/cloud-datastore
Python
For more information, see Setting Up a Python Development Environment.
pip install --upgrade google-cloud-datastore
Ruby
For more information, see Setting Up a Ruby Development Environment.
gem install google-cloud-datastore
Setting up authentication
To run the client library, you must first set up authentication. One way to do that is to create a service account and set an environment variable, as shown in the following steps. For other ways to authenticate, see Authenticating as a service account.
Create a service account:
In the Cloud console, go to the Create service account page.
In the Service account name field, enter a name. The Cloud console fills
in the Service account ID field based on this name.
In the Service account description field, enter a description. For example,
To provide access to your project, grant the following role(s) to your
service account: Project > Owner.
In the Select a role list, select a role.
For additional roles, click
Click Done to finish creating the service account.
Do not close your browser window. You will use it in the next step.
Create a service account key:
Console
Service account for quickstart
.
Set up authentication:
Create the service account. Replace
Grant roles to the service account. Run the following command once for each of the
following IAM roles:
Replace the following:
Generate the key file:
Replace the following:
gcloud
NAME
with a name
for the service account:
gcloud iam service-accounts create NAME
roles/owner
:
gcloud projects add-iam-policy-binding PROJECT_ID --member="serviceAccount:SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com" --role=ROLE
SERVICE_ACCOUNT_NAME
: the name of the service accountPROJECT_ID
: the project ID where you created the service accountROLE
: the role to grantgcloud iam service-accounts keys create FILE_NAME.json --iam-account=SERVICE_ACCOUNT_NAME@PROJECT_ID.iam.gserviceaccount.com
FILE_NAME
: a name for the key fileSERVICE_ACCOUNT_NAME
: the name of the service accountPROJECT_ID
: the project ID where you created the service account
Provide authentication credentials to your application code by setting the
environment variable GOOGLE_APPLICATION_CREDENTIALS
. This
variable applies only to your current shell session. If you want the variable
to apply to future shell sessions, set the variable in your shell startup file,
for example in the ~/.bashrc
or ~/.profile
file.
Linux or macOS
export GOOGLE_APPLICATION_CREDENTIALS="KEY_PATH
"
Replace KEY_PATH
with the path of the JSON file that contains your service account key.
For example:
export GOOGLE_APPLICATION_CREDENTIALS="/home/user/Downloads/service-account-file.json"
Windows
For PowerShell:
$env:GOOGLE_APPLICATION_CREDENTIALS="KEY_PATH
"
Replace KEY_PATH
with the path of the JSON file that contains your service account key.
For example:
$env:GOOGLE_APPLICATION_CREDENTIALS="C:\Users\username\Downloads\service-account-file.json"
For command prompt:
set GOOGLE_APPLICATION_CREDENTIALS=KEY_PATH
Replace KEY_PATH
with the path of the JSON file that contains your service account key.
Using the client library
The following example shows how to use the client library.
C#
Before trying this sample, follow the C# setup instructions in Setting up a C# development environment. For more information, see the Datastore mode C# API reference documentation.
Go
To use this sample, prepare your machine for Go development, and complete the Datastore mode quickstart. For more information, see the Datastore mode Go API reference documentation.
Java
Before trying this sample, follow the Java setup instructions in Setting up a Java development environment. For more information, see the Datastore mode Java API reference documentation.
Node.js
Before trying this sample, follow the Node.js setup instructions in Setting up a Node.js development environment. For more information, see the Datastore mode Node.js API reference documentation.
PHP
To use this sample, prepare your machine for PHP development, and complete the Datastore mode quickstart. For more information, see the Datastore mode PHP API reference documentation.
Python
Before trying this sample, follow the Python setup instructions in Setting up a Python development environment. For more information, see the Datastore mode Python API reference documentation.
Ruby
Before trying this sample, follow the Ruby setup instructions in Setting up a Ruby development environment. For more information, see the Datastore mode Ruby API reference documentation.
Additional resources
C#
Go
Java
Node.js
PHP
Python
Ruby
Dependency on App Engine application
If you are using a Google Cloud library to access Datastore mode, your Cloud project requires an active App Engine application. Open the App Engine dashboard and confirm your Cloud project has an active App Engine app. Create an App Engine app if needed. The app must not be disabled.
Google App Engine Standard Environment Client Libraries
Integrate Firestore in Datastore mode with your App Engine Standard Environment applications by using the App Engine client libraries.
Language | Library |
---|---|
Go | Google App Engine SDK for Go |
Java | Google App Engine SDK for Java |
Python 2 | Google Datastore NDB Client Library |
Python 3 | Google Cloud Datastore client library. |
Third-party Datastore API client libraries
In addition to the Google-supported client libraries listed in the tables above, a set of third-party libraries are available.
Language | Library |
---|---|
Java | Objectify |
PHP | Datastore Library for PHP |