QCS Client Configuration
Details on environment configuration for QCS clients.
One set of configuration values is used for all QCS software on your computer - CLI, pyQuil, all SDKs, etc. Those settings can be applied using a configuration file, environment variables, or at runtime by editing the configuration object in your chosen language's SDK.
QCS Settings and Secrets files are automatically downloaded and configured when using the QCS CLI Client. See Using the QCS CLI for more information.
JupyterLab environments are preconfigured.
QCS clients derive configuration from the environment:
QCS_PROFILE_NAME
- Name of settings profile to use (optional)
QCS_SETTINGS_PATH
orQCS_SETTINGS_FILE_PATH
- File path to API configurations options toml file, default is
~/.qcs/settings.toml
QCS_SECRETS_PATH
orQCS_SECRETS_FILE_PATH
- File path to API authentication token toml file, default is
~/.qcs/secrets.toml
QCS_SETTINGS_APPLICATIONS_PYQUIL_QVM_URL
- URL to use for QVM when running pyQuil, default is
http://127.0.0.1:5000
QCS_SETTINGS_APPLICATIONS_PYQUIL_QUILC_URL
- URL to use for quilc when running pyQuil, default is
tcp://127.0.0.1:5555
A
toml
-formatted file with configuration details for using QCS Clients.An annotated example:
# Name of profile to use when one is not otherwise specified.
# Used in order of precedence:
# 1. The `--profile-name` flag via the QCS CLI.
# 2. The `QCS_PROFILE_NAME` environment variable.
# 3. This `default_profile_name` value in this toml file.
default_profile_name = "default"
# (Required) One or more named profiles used for
# configuring QCS applications like the CLI.
[profiles]
# A named profile.
[profiles.default]
# (Required) QCS API origin.
api_url = "https://api.qcs.rigetti.com"
# (Optional) Named credentials to use from `QCS_SECRETS_FILE`.
credentials_name = "default"
# (Optional) OAuth server name to use.
auth_server_name = "default"
# (Optional) Application-specific settings
[profiles.default.applications]
# (Optional) QCS CLI configurations
[profiles.default.applications.cli]
# (Optional) Log verbosity - lower levels include messages from
# all levels above them.
# Options:
# - "panic"
# - "fatal"
# - "error"
# - "warn" (default)
# - "info"
# - "debug"
verbosity = "warn"
# (Optional) Returned data output format.
# Options:
# - "yaml"
# - "json" (default)
output_format = "json"
# (Optional) PyQuil configurations
[profiles.default.applications.pyquil]
# Endpoints for qvm
# Overridden by environment variable: QCS_SETTINGS_APPLICATIONS_PYQUIL_QVM_URL
qvm_url = "http://127.0.0.1:5000"
# Endpoint for quilc
# Overridden by environment variable: QCS_SETTINGS_APPLICATIONS_PYQUIL_QUILC_URL
quilc_url = "tcp://127.0.0.1:5555"
# (Required) One or more named OAuth server configurations.
[auth_servers]
# A named OAuth configuration.
# The following example uses the values expected for authenticating to https://api.qcs.rigetti.com/
[auth_servers.default]
# (Required) OAuth Client ID.
# This is the Client ID used to authenticate to https://api.qcs.rigetti.com/
client_id = "0oa3ykoirzDKpkfzk357"
# (Required) OAuth OpenID issuer base URL.
# This is the issuer URL used to authenticate to https://api.qcs.rigetti.com/
issuer = "https://auth.qcs.rigetti.com/oauth2/aus8jcovzG0gW2TUG355"
A
toml
-formatted file with credentials for authenticating with QCS clients. You shouldn't have to create or edit this file manually - if your file is corrupted, download a new copy at https://qcs.rigetti.com/auth/tokenNote that this file contains secrets and should be kept safe!
# One or more authentication credentials.
[credentials]
# A named set of credentials.
[credentials.default]
# OAuth access token response payload.
# You shouldn't have to configure this
[credentials.default.token_payload]
id_token = "<JWT HERE>"
access_token = "<JWT HERE>"
expires_in = 86400
refresh_token = "<SECRET HERE>"
scope = "offline_access openid profile email"
token_type = "Bearer"
Last modified 1mo ago