:py:mod:`viam.app.viam_client` ============================== .. py:module:: viam.app.viam_client Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: viam.app.viam_client.ViamClient Attributes ~~~~~~~~~~ .. autoapisummary:: viam.app.viam_client.LOGGER .. py:data:: LOGGER .. py:class:: ViamClient gRPC client for all communication and interaction with app. `ViamClient` class for creating and managing specialized client instances. There is currently 1 way to instantiate a `ViamClient` object:: ViamClient.create_from_dial_options(...) .. py:property:: data_client :type: viam.app.data_client.DataClient Instantiate and return a `DataClient` object used to make `data` and `data_sync` method calls. To use the `DataClient`, you must first instantiate a `ViamClient`. :: async def connect() -> ViamClient: # Replace "" (including brackets) with your API key and "" with your API key ID dial_options = DialOptions.with_api_key("", "") return await ViamClient.create_from_dial_options(dial_options) async def main(): viam_client = await connect() # Instantiate a DataClient to run data client API methods on data_client = viam_client.data_client .. py:property:: app_client :type: viam.app.app_client.AppClient Instantiate and return an `AppClient` used to make `app` method calls. To use the `AppClient`, you must first instantiate a `ViamClient`. :: async def connect() -> ViamClient: # Replace "" (including brackets) with your API key and "" with your API key ID dial_options = DialOptions.with_api_key("", "") return await ViamClient.create_from_dial_options(dial_options) async def main(): viam_client = await connect() # Instantiate an AppClient called "fleet" to run fleet management API methods on fleet = viam_client.app_client .. py:property:: ml_training_client :type: viam.app.ml_training_client.MLTrainingClient Instantiate and return a `MLTrainingClient` used to make `ml_training` method calls. To use the `MLTrainingClient`, you must first instantiate a `ViamClient`. :: async def connect() -> ViamClient: # Replace "" (including brackets) with your API key and "" with your API key ID dial_options = DialOptions.with_api_key("", "") return await ViamClient.create_from_dial_options(dial_options) async def main(): viam_client = await connect() # Instantiate an MLTrainingClient to run ML training client API methods on ml_training_client = viam_client.ml_training_client .. py:property:: billing_client :type: viam.app.billing_client.BillingClient Instantiate and return a `BillingClient` used to make `billing` method calls. To use the `BillingClient`, you must first instantiate a `ViamClient`. :: async def connect() -> ViamClient: # Replace "" (including brackets) with your API key and "" with your API key ID dial_options = DialOptions.with_api_key("", "") return await ViamClient.create_from_dial_options(dial_options) async def main(): viam_client = await connect() # Instantiate a BillingClient to run billing client API methods on billing_client = viam_client.billing_client .. py:property:: provisioning_client :type: viam.app.provisioning_client.ProvisioningClient Instantiate and return a `ProvisioningClient` used to make `provisioning` method calls. To use the `ProvisioningClient`, you must first instantiate a `ViamClient`. :: async def connect() -> ViamClient: # Replace "" (including brackets) with your API key and "" with your API key ID dial_options = DialOptions.with_api_key("", "") return await ViamClient.create_from_dial_options(dial_options) async def main(): viam_client = await connect() # Instantiate a ProvisioningClient to run provisioning API methods on provisioning_client = viam_client.provisioning_client .. py:method:: create_from_dial_options(dial_options: viam.rpc.dial.DialOptions, app_url: Optional[str] = None) -> typing_extensions.Self :classmethod: :async: Create `ViamClient` that establishes a connection to the Viam app. :: dial_options = DialOptions.with_api_key("", "") ViamClient.create_from_dial_options(dial_options) :param dial_options: Required information for authorization and connection to app. `creds` and `auth_entity` fields are required. :type dial_options: viam.rpc.dial.DialOptions :param app_url: (Optional[str]): URL of app. Uses app.viam.com if not specified. :raises ValueError: If the input parameters are missing a required field or simply invalid. :returns: The `ViamClient`. :rtype: Self .. py:method:: close() Close opened channels used for the various service stubs initialized.