ドキュメントTarget デベロッパーガイド

属性を取得(Python)

最終更新日: 2024年7月22日
  • トピック:
  • APIs/SDKs

作成対象:

  • 開発者

説明

get_attributes() を使用して、Target から実験とパーソナライズされたエクスペリエンスを取得し、属性値を抽出します。

メソッド

getAttributes

target_client_instance.get_attributes(mbox_names, options)

パラメーター

名前タイプ必須デフォルト説明
mbox_nameslist[str]○Nonembox 名のリスト
optionsdict×Noneオファーを取得に使用するオプションと同じ

AttributesProvider

target_client.get_attributes() から返される AttributesProvider には、次のメソッドがあります。

メソッド戻り値の型説明
get_value (mbox_name, key)any指定された mbox 名と属性キーの値を返します
as_object (mbox_name)dictキーと値のペアを持つ単純な json オブジェクトを返します
get_response ()TargetDeliveryResponse通常 get_offers によって返される応答オブジェクトを返します

例

Python

def client_ready_callback():
    context = Context(channel=ChannelType.WEB)
    mboxes = [MboxRequest(name="a1-serverside-ab", index=1)]
    execute = ExecuteRequest(mboxes=mboxes)
    delivery_request = DeliveryRequest(context=context, execute=execute)

    get_attributes_options = {
      "request": delivery_request
    }

    attributes_provider = target_client.get_attributes(["demo-engineering-flags"], get_attributes_options)
    # returns just the value of searchProviderId from the demo-engineering-flags mbox offer
    search_provider_id = attributes_provider.get_value("demo-engineering-flags", "searchProviderId")

    # returns a simple dict object representing the demo-engineering-flags mbox offer
    engineering_flags = attributes_provider.as_object("demo-engineering-flags")
    """  the value of engineeringFlags looks like this
        {
            "cdnHostname": "cdn.cloud.corp.net",
            "searchProviderId": 143,
            "hasLegacyAccess": false
        }
    """

    asset_url = "http://{}/path/to/asset".format(engineering_flags.get("cdnHostname"))


client_options = {
    "client": "acmeclient",
    "organization_id": "1234567890@AdobeOrg",
    "events": {
        "client_ready": client_ready_callback
    }
}
target_client = TargetClient.create(client_options)
recommendation-more-help
6906415f-169c-422b-89d3-7118e147c4e3