Instance Admin API¶
After creating a Client
, you can
interact with individual instances for a project.
List Instances¶
If you want a comprehensive list of all existing instances, make a
ListInstances API request with
Client.list_instances()
:
instances = client.list_instances()
Instance Factory¶
To create an Instance
object:
instance = client.instance(instance_id, display_name=display_name)
display_name
is optional. When not provided,display_name
defaults to theinstance_id
value.
You can also use Client.instance()
to create a local wrapper for
instances that have already been created with the API, or through the web
console:
instance = client.instance(existing_instance_id)
instance.reload()
Create a new Instance¶
After creating the instance object, make a CreateInstance API request
with create()
:
instance.display_name = 'My very own instance'
instance.create()
Check on Current Operation¶
Note
When modifying an instance (via a CreateInstance request), the Bigtable
API will return a long-running operation and a corresponding
Operation
object
will be returned by
create()
.
You can check if a long-running operation (for a
create()
has finished
by making a GetOperation request with
Operation.finished()
:
>>> operation = instance.create()
>>> operation.finished()
True
Note
Once an Operation
object
has returned True
from
finished()
, the
object should not be re-used. Subsequent calls to
finished()
will result in a ValueError
.
Get metadata for an existing Instance¶
After creating the instance object, make a GetInstance API request
with reload()
:
instance.reload()
This will load display_name
for the existing instance
object.
Update an existing Instance¶
After creating the instance object, make an UpdateInstance API request
with update()
:
instance.display_name = 'New display_name'
instance.update()
Delete an existing Instance¶
Make a DeleteInstance API request with
delete()
:
instance.delete()
Next Step¶
Now we go down the hierarchy from
Instance
to a
Table
.
Head next to learn about the Table Admin API.