Client#
A Client for interacting with the Resource Manager API.
-
class
google.cloud.resource_manager.client.
Client
(credentials=None, http=None)[source]# Bases:
google.cloud.client.Client
Client to bundle configuration needed for API requests.
See https://cloud.google.com/resource-manager/reference/rest/ for more information on this API.
Automatically get credentials:
>>> from google.cloud import resource_manager >>> client = resource_manager.Client()
Parameters: - credentials (
oauth2client.client.OAuth2Credentials
orNoneType
) – The OAuth2 Credentials to use for the connection owned by this client. If not passed (and if nohttp
object is passed), falls back to the default inferred from the environment. - http (
httplib2.Http
or class that definesrequest()
.) – An optional HTTP object to make requests. If not passed, anhttp
object is created that is bound to thecredentials
for the current object.
-
fetch_project
(project_id)[source]# Fetch an existing project and it’s relevant metadata by ID.
Note
If the project does not exist, this will raise a
NotFound
error.Parameters: project_id (str) – The ID for this project. Return type: Project
Returns: A Project
with metadata fetched from the API.
-
list_projects
(filter_params=None, page_size=None)[source]# List the projects visible to this client.
Example:
>>> from google.cloud import resource_manager >>> client = resource_manager.Client() >>> for project in client.list_projects(): ... print(project.project_id)
List all projects with label
'environment'
set to'prod'
(filtering by labels):>>> from google.cloud import resource_manager >>> client = resource_manager.Client() >>> env_filter = {'labels.environment': 'prod'} >>> for project in client.list_projects(env_filter): ... print(project.project_id)
See: https://cloud.google.com/resource-manager/reference/rest/v1beta1/projects/list
Complete filtering example:
>>> project_filter = { # Return projects with... ... 'name': 'My Project', # name set to 'My Project'. ... 'id': 'my-project-id', # id set to 'my-project-id'. ... 'labels.stage': 'prod', # the label 'stage' set to 'prod' ... 'labels.color': '*' # a label 'color' set to anything. ... } >>> client.list_projects(project_filter)
Parameters: - filter_params (dict) – (Optional) A dictionary of filter options where
each key is a property to filter on, and each
value is the (case-insensitive) value to check
(or the glob
*
to check for existence of the property). See the example above for more details. - page_size (int) – (Optional) Maximum number of projects to return in a single page. If not passed, defaults to a value set by the API.
Return type: _ProjectIterator
Returns: A project iterator. The iterator will make multiple API requests if you continue iterating and there are more pages of results. Each item returned will be a.
Project
.- filter_params (dict) – (Optional) A dictionary of filter options where
each key is a property to filter on, and each
value is the (case-insensitive) value to check
(or the glob
-
new_project
(project_id, name=None, labels=None)[source]# Create a project bound to the current client.
Use
Project.reload()
to retrieve project metadata after creating aProject
instance.Parameters: Return type: Returns: A new instance of a
Project
without any metadata loaded.
- credentials (
Connection#
Create / interact with Google Cloud Resource Manager connections.
-
class
google.cloud.resource_manager.connection.
Connection
(credentials=None, http=None)[source]# Bases:
google.cloud.connection.JSONConnection
A connection to Google Cloud Resource Manager via the JSON REST API.
Parameters: - credentials (
oauth2client.client.OAuth2Credentials
) – (Optional) The OAuth2 Credentials to use for this connection. - http (
httplib2.Http
or class that definesrequest()
.) – (Optional) HTTP object to make requests.
-
API_BASE_URL
= 'https://cloudresourcemanager.googleapis.com'# The base of the API call URL.
-
API_URL_TEMPLATE
= '{api_base_url}/{api_version}{path}'# A template for the URL of a particular API call.
-
API_VERSION
= 'v1beta1'# The version of the API, used in building the API call’s URL.
-
SCOPE
= ('https://www.googleapis.com/auth/cloud-platform',)# The scopes required for authenticating as a Resouce Manager consumer.
- credentials (