azure.appconfiguration package

Submodules

azure.appconfiguration.azure_appconfiguration_client module

azure.appconfiguration.azure_appconfiguration_credential module

azure.appconfiguration.azure_appconfiguration_requests module

Module contents

exception azure.appconfiguration.ResourceReadOnlyError(message=None, response=None, **kwargs)[source]

Bases: azure.core.exceptions.HttpResponseError

An error response with status code 409

The key is read-only.

To allow modification unlock it first.

class azure.appconfiguration.AzureAppConfigurationClient(base_url, credential, **kwargs)[source]

Bases: object

Represents an client that calls restful API of Azure App Configuration service.

Parameters:
  • base_url (str) – base url of the service
  • credential (azure.AppConfigConnectionStringCredential) – An object which can provide secrets for the app configuration service
Keyword Arguments:
 
  • pipeline (Pipeline) – If omitted, the standard pipeline is used.
  • transport (HttpTransport) – If omitted, the standard pipeline is used.
  • policies (list[HTTPPolicy]) – If omitted, the standard pipeline is used.
add_configuration_setting(configuration_setting, **kwargs)[source]

Add a ConfigurationSetting into the Azure App Configuration service.

Parameters:configuration_setting (ConfigurationSetting) – the ConfigurationSetting object to be added
Keyword Arguments:
 headers (dict) – if “headers” exists, its value (a dict) will be added to the http request header
Returns:The ConfigurationSetting object returned from the App Configuration service
Return type:ConfigurationSetting
Raises:HttpResponseError, ClientAuthenticationError, ResourceExistsError

Example

config_setting = ConfigurationSetting(
    key="MyKey",
    label="MyLabel",
    value="my value",
    content_type="my content type",
    tags={"my tag": "my tag value"}
)
added_config_setting = client.add_configuration_setting(config_setting)
delete_configuration_setting(key, label=None, **kwargs)[source]

Delete a ConfigurationSetting if it exists

Parameters:
  • key (str) – key used to identify the ConfigurationSetting
  • label (str) – label used to identify the ConfigurationSetting
Keyword Arguments:
 
  • etag (str) – check if the ConfigurationSetting is changed. Set None to skip checking etag
  • match_condition (MatchConditions) – the match condition to use upon the etag
  • headers (dict) – if “headers” exists, its value (a dict) will be added to the http request
Returns:

The deleted ConfigurationSetting returned from the service, or None if it doesn’t exist.

Return type:

ConfigurationSetting

Raises:

HttpResponseError, ClientAuthenticationError, ResourceReadOnlyError, ResourceModifiedError, ResourceNotModifiedError, ResourceNotFoundError, ResourceExistsError

Example

deleted_config_setting = client.delete_configuration_setting(
    key="MyKey", label="MyLabel"
)
classmethod from_connection_string(connection_string, **kwargs)[source]

Create AzureAppConfigurationClient from a Connection String.

param connection_string:
 Connection String (one of the access keys of the Azure App Configuration resource) used to access the Azure App Configuration.
type connection_string:
 str

Example

from azure.appconfiguration import AzureAppConfigurationClient
connection_str = "<my connection string>"
client = AzureAppConfigurationClient.from_connection_string(connection_str)
get_configuration_setting(key, label=None, etag='*', match_condition=<MatchConditions.Unconditionally: 1>, **kwargs)[source]

Get the matched ConfigurationSetting from Azure App Configuration service

Parameters:
  • key (str) – key of the ConfigurationSetting
  • label (str) – label of the ConfigurationSetting
  • etag (str or None) – check if the ConfigurationSetting is changed. Set None to skip checking etag
  • match_condition (MatchConditions) – the match condition to use upon the etag
Keyword Arguments:
 
  • accept_datetime (datetime) – the retrieved ConfigurationSetting that created no later than this datetime
  • headers (dict) – if “headers” exists, its value (a dict) will be added to the http request header
Returns:

The matched ConfigurationSetting object

Return type:

ConfigurationSetting

Raises:

HttpResponseError, ClientAuthenticationError, ResourceNotFoundError, ResourceModifiedError, ResourceExistsError

Example

fetched_config_setting = client.get_configuration_setting(
    key="MyKey", label="MyLabel"
)
list_configuration_settings(key_filter=None, label_filter=None, **kwargs)[source]

List the configuration settings stored in the configuration service, optionally filtered by label and accept_datetime

Parameters:
  • key_filter (str) – filter results based on their keys. ‘*’ can be used as wildcard in the beginning or end of the filter
  • label_filter (str) – filter results based on their label. ‘*’ can be used as wildcard in the beginning or end of the filter
Keyword Arguments:
 
  • accept_datetime (datetime) – filter out ConfigurationSetting created after this datetime
  • fields (list[str]) – specify which fields to include in the results. Leave None to include all fields
  • headers (dict) – if “headers” exists, its value (a dict) will be added to the http request header
Returns:

An iterator of ConfigurationSetting

Return type:

azure.core.paging.ItemPaged[ConfigurationSetting]

Raises:

HttpResponseError, ClientAuthenticationError

Example

from datetime import datetime, timedelta

accept_datetime = datetime.today() + timedelta(days=-1)

all_listed = client.list_configuration_settings()
for item in all_listed:
    pass  # do something

filtered_listed = client.list_configuration_settings(
    label_filter="*Labe*", key_filter="*Ke*", accept_datetime=accept_datetime
)
for item in filtered_listed:
    pass  # do something
list_revisions(key_filter=None, label_filter=None, **kwargs)[source]

Find the ConfigurationSetting revision history.

Parameters:
  • key_filter (str) – filter results based on their keys. ‘*’ can be used as wildcard in the beginning or end of the filter
  • label_filter (str) – filter results based on their label. ‘*’ can be used as wildcard in the beginning or end of the filter
Keyword Arguments:
 
  • accept_datetime (datetime) – filter out ConfigurationSetting created after this datetime
  • fields (list[str]) – specify which fields to include in the results. Leave None to include all fields
  • headers (dict) – if “headers” exists, its value (a dict) will be added to the http request header
Returns:

An iterator of ConfigurationSetting

Return type:

azure.core.paging.ItemPaged[ConfigurationSetting]

Raises:

HttpResponseError, ClientAuthenticationError

Example

from datetime import datetime, timedelta

accept_datetime = datetime.today() + timedelta(days=-1)

all_revisions = client.list_revisions()
for item in all_revisions:
    pass  # do something

filtered_revisions = client.list_revisions(
    label_filter="*Labe*", key_filter="*Ke*", accept_datetime=accept_datetime
)
for item in filtered_revisions:
    pass  # do something
set_configuration_setting(configuration_setting, match_condition=<MatchConditions.Unconditionally: 1>, **kwargs)[source]

Add or update a ConfigurationSetting. If the configuration setting identified by key and label does not exist, this is a create. Otherwise this is an update.

Parameters:
  • configuration_setting (ConfigurationSetting) – the ConfigurationSetting to be added (if not exists) or updated (if exists) to the service
  • match_condition (MatchConditions) – the match condition to use upon the etag
Keyword Arguments:
 

headers (dict) – if “headers” exists, its value (a dict) will be added to the http request header

Returns:

The ConfigurationSetting returned from the service

Return type:

ConfigurationSetting

Raises:

HttpResponseError, ClientAuthenticationError, ResourceReadOnlyError, ResourceModifiedError, ResourceNotModifiedError, ResourceNotFoundError, ResourceExistsError

Example

config_setting = ConfigurationSetting(
    key="MyKey",
    label="MyLabel",
    value="my set value",
    content_type="my set content type",
    tags={"my set tag": "my set tag value"}
)
returned_config_setting = client.set_configuration_setting(config_setting)
set_read_only(configuration_setting, read_only=True, **kwargs)[source]

Set a configuration setting read only

Parameters:
  • configuration_setting (ConfigurationSetting) – the ConfigurationSetting to be set read only
  • read_only (bool) – set the read only setting if true, else clear the read only setting
Keyword Arguments:
 

headers (dict) – if “headers” exists, its value (a dict) will be added to the http request header

Returns:

The ConfigurationSetting returned from the service

Return type:

ConfigurationSetting

Raises:

HttpResponseError, ClientAuthenticationError, ResourceNotFoundError

Example

config_setting = client.get_configuration_setting(
    key="MyKey", label="MyLabel"
)

read_only_config_setting = client.set_read_only(config_setting)
read_only_config_setting = client.set_read_only(config_setting, read_only=False)
class azure.appconfiguration.ConfigurationSetting(**kwargs)[source]

Bases: msrest.serialization.Model

A configuration value. Variables are only populated by the server, and will be ignored when sending a request. :ivar etag: Entity tag (etag) of the object :vartype etag: str :param key: :type key: str :param label: :type label: str :param content_type: :type content_type: str :param value: :type value: str :ivar last_modified: :vartype last_modified: datetime :ivar read_only: :vartype read_only: bool :param tags: :type tags: dict[str, str]