graph LR
SDK_Orchestrator["SDK Orchestrator"]
Local_Decisioning_Core["Local Decisioning Core"]
Delivery_API_Interface["Delivery API Interface"]
Shared_Utilities["Shared Utilities"]
SDK_Samples["SDK Samples"]
SDK_Orchestrator -- "orchestrates" --> Local_Decisioning_Core
SDK_Orchestrator -- "orchestrates" --> Delivery_API_Interface
SDK_Orchestrator -- "utilizes" --> Shared_Utilities
Local_Decisioning_Core -- "utilizes" --> Shared_Utilities
Local_Decisioning_Core -- "sends data via" --> Delivery_API_Interface
Delivery_API_Interface -- "utilizes" --> Shared_Utilities
SDK_Samples -- "interacts with" --> SDK_Orchestrator
click SDK_Orchestrator href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/target-python-sdk/SDK Orchestrator.md" "Details"
click Local_Decisioning_Core href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/target-python-sdk/Local Decisioning Core.md" "Details"
click Delivery_API_Interface href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/target-python-sdk/Delivery API Interface.md" "Details"
click Shared_Utilities href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/target-python-sdk/Shared Utilities.md" "Details"
click SDK_Samples href "https://github.com/CodeBoarding/GeneratedOnBoardings/blob/main/target-python-sdk/SDK Samples.md" "Details"
This graph illustrates the high-level architecture of the target-python-sdk, detailing its core components and their interactions. The main flow involves the SDK Orchestrator handling requests, which can be processed either locally by the Local Decisioning Core or remotely via the Delivery API Interface. Both core functionalities rely on Shared Utilities for common operations, and SDK Samples demonstrate typical usage patterns.
The primary entry point for interacting with the Adobe Target Python SDK. It orchestrates the entire process of fetching offers, sending notifications, and managing the SDK's lifecycle, including initialization and validation of requests. It can utilize either the local decisioning engine or make remote API calls, and provides helper functionalities for cookie management and request/response processing.
Related Classes/Methods:
target-python-sdk.target_python_sdk.target.TargetClient(full file reference)target-python-sdk.target_python_sdk.local_delivery_api.LocalDeliveryApi(15:33)target-python-sdk.target_python_sdk.validators(full file reference)target-python-sdk.target_python_sdk.helper(full file reference)target-python-sdk.target_python_sdk.cookies(full file reference)target-python-sdk.target_python_sdk.types.target_delivery_response.TargetDeliveryResponse(14:32)
Encapsulates the core logic for evaluating rules and making personalized content decisions locally. It manages decisioning artifacts, constructs various context objects from input data, and handles tracing and dispatching of notifications and telemetry related to local decisions.
Related Classes/Methods:
target-python-sdk.target_decisioning_engine.decision_provider.DecisionProvider(60:313)target-python-sdk.target_decisioning_engine.rule_evaluator.RuleEvaluator(21:68)target-python-sdk.target_decisioning_engine.allocation_provider(full file reference)target-python-sdk.target_decisioning_engine.filters(full file reference)target-python-sdk.target_decisioning_engine.artifact_provider.ArtifactProvider(53:231)target-python-sdk.target_decisioning_engine.geo_provider.GeoProvider(121:200)target-python-sdk.target_decisioning_engine.context_provider(full file reference)target-python-sdk.target_decisioning_engine.request_provider(full file reference)target-python-sdk.target_decisioning_engine.trace_provider.TraceProvider(33:83)target-python-sdk.target_decisioning_engine.trace_provider.RequestTracer(86:217)target-python-sdk.target_decisioning_engine.trace_provider.ArtifactTracer(220:261)target-python-sdk.target_decisioning_engine.notification_provider.NotificationProvider(29:114)
Provides the low-level interface for making HTTP requests to the Adobe Target Delivery API. It handles request serialization, response deserialization, error handling for network communication, and defines the data models for all requests and responses exchanged with the API.
Related Classes/Methods:
target-python-sdk.delivery_api_client.api.delivery_api.DeliveryApi(27:209)target-python-sdk.delivery_api_client.api_client.ApiClient(39:723)target-python-sdk.delivery_api_client.rest.RESTClientObject(50:296)target-python-sdk.delivery_api_client.configuration.Configuration(39:311)target-python-sdk.delivery_api_client.exceptions(full file reference)target-python-sdk.delivery_api_client.Model.delivery_request.DeliveryRequest(19:463)target-python-sdk.delivery_api_client.Model.delivery_response.DeliveryResponse(19:300)target-python-sdk.delivery_api_client.Model.mbox_response.MboxResponse(19:252)target-python-sdk.delivery_api_client.Model.notification.Notification(19:440)target-python-sdk.delivery_api_client.Model.context.Context(19:379)target-python-sdk.delivery_api_client.Model.geo.Geo(19:286)target-python-sdk.delivery_api_client.Model.visitor_id.VisitorId(19:204)
A collection of general-purpose utility functions, performance tools, event handling, attribute management, and data structure helpers used across various modules of the SDK, ensuring consistency and reusability.
Related Classes/Methods:
target-python-sdk.target_tools.response_helpers(full file reference)target-python-sdk.target_tools.client_info(full file reference)target-python-sdk.target_tools.perf_tool._PerfTool(19:75)target-python-sdk.target_tools.event_provider.EventProvider(28:74)target-python-sdk.target_tools.attributes_provider.AttributesProvider(36:70)target-python-sdk.target_tools.hashing(full file reference)target-python-sdk.target_tools.utils(full file reference)target-python-sdk.target_tools.types.limited_key_dict.LimitedKeyDict(13:39)target-python-sdk.target_decisioning_engine.post_processors(full file reference)target-python-sdk.target_decisioning_engine.utils(full file reference)target-python-sdk.target_decisioning_engine.types.decisioning_artifact(full file reference)target-python-sdk.target_decisioning_engine.types.decisioning_context(full file reference)
Contains example code demonstrating how to use the Adobe Target Python SDK for various scenarios, serving as a guide for developers.
Related Classes/Methods:
target-python-sdk.samples.app(full file reference)target-python-sdk.samples.target_client_service(full file reference)target-python-sdk.samples.target_request_utils(full file reference)