Project object describes a Registry Project, and can be created either from an Account via Account.list_projects() or directly using its ID.
Projects are lazy, in that they don’t perform any network requests without an explicit call to Project.load() or to a property getter.
Instance Methods
The only non-getter method on aProject is Project.load(). This method, if called, will perform a network request and cache values for each of the Project’s properties.
Property Getters
All property getters have an optionalload_if_missing boolean argument which, if True, will call Project.load() if the requested property has not been loaded already. This defaults to True.
Project.get_display_name()will return thedisplay_nameof the callingProjectas a string.Project.list_tables()will return a list ofTableobjects, each corresponding to a table within the callingProject.
Updater
AProject can be modified by using the Project.update() function. Project.update() returns a context manager (and hence must be called using with syntax) with the following methods:
upsert_table(name: str)will create a table with namename.
delete_table(id: str)will delete the table with idid. If no such table exists, the method call will be a noop.