azure.appconfiguration package

Module contents

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

An error response with status code 409

The key is read-only.

To allow modification unlock it first.

raise_with_traceback()
with_traceback()

Exception.with_traceback(tb) – set self.__traceback__ to tb and return self.

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

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)
clear_read_only(configuration_setting, **kwargs)[source]

Clear read only flag for a configuration setting

Parameters

configuration_setting (ConfigurationSetting) – the ConfigurationSetting to be read only clear

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.clear_read_only(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(keys=None, labels=None, **kwargs)[source]

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

Parameters
  • keys (list[str]) – filter results based on their keys. ‘*’ can be used as wildcard in the beginning or end of the filter

  • labels (list[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(
    labels=["*Labe*"], keys=["*Ke*"], accept_datetime=accept_datetime
)
for item in filtered_listed:
    pass  # do something
list_revisions(keys=None, labels=None, **kwargs)[source]

Find the ConfigurationSetting revision history.

Parameters
  • keys (list[str]) – filter results based on their keys. ‘*’ can be used as wildcard in the beginning or end of the filter

  • labels (list[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(
    labels=["*Labe*"], keys=["*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, **kwargs)[source]

Set a configuration setting read only

Parameters

configuration_setting (ConfigurationSetting) – the ConfigurationSetting to be set read only

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)
class azure.appconfiguration.ConfigurationSetting(**kwargs)[source]

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]

as_dict(keep_readonly=True, key_transformer=<function attribute_transformer>)

Return a dict that can be JSONify using json.dump.

Advanced usage might optionaly use a callback as parameter:

Key is the attribute name used in Python. Attr_desc is a dict of metadata. Currently contains ‘type’ with the msrest type and ‘key’ with the RestAPI encoded key. Value is the current value in this object.

The string returned will be used to serialize the key. If the return type is a list, this is considered hierarchical result dict.

See the three examples in this file:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

Parameters

key_transformer (function) – A key transformer function.

Returns

A dict JSON compatible object

Return type

dict

classmethod deserialize(data, content_type=None)

Parse a str using the RestAPI syntax and return a model.

Parameters
  • data (str) – A str using RestAPI structure. JSON by default.

  • content_type (str) – JSON by default, set application/xml if XML.

Returns

An instance of this model

Raises

DeserializationError if something went wrong

classmethod enable_additional_properties_sending()
classmethod from_dict(data, key_extractors=None, content_type=None)

Parse a dict using given key extractor return a model.

By default consider key extractors (rest_key_case_insensitive_extractor, attribute_key_case_insensitive_extractor and last_rest_key_case_insensitive_extractor)

Parameters
  • data (dict) – A dict using RestAPI structure

  • content_type (str) – JSON by default, set application/xml if XML.

Returns

An instance of this model

Raises

DeserializationError if something went wrong

classmethod is_xml_model()
serialize(keep_readonly=False)

Return the JSON that would be sent to azure from this model.

This is an alias to as_dict(full_restapi_key_transformer, keep_readonly=False).

Parameters

keep_readonly (bool) – If you want to serialize the readonly attributes

Returns

A dict JSON compatible object

Return type

dict

validate()

Validate this model recursively and return a list of ValidationError.

Returns

A list of validation error

Return type

list