-
Notifications
You must be signed in to change notification settings - Fork 749
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Support server-side configuration for client ad units #2186
Labels
Comments
Suggestion - how about two generic pass-throughs:
|
bretg
added
the
Intent to implement
An issue describing a plan for a major feature. These are intended for community feedback
label
Apr 1, 2022
This is approved by the committee |
mansinahar
added
Ready For Dev
Feature specification is ready to be developed.
and removed
Intent to implement
An issue describing a plan for a major feature. These are intended for community feedback
labels
May 16, 2022
Done with PBS-Java 1.91 |
Implemented in PBS-Go 0.221.0. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Motivation
The deployment cycle of the mobile SDK is pretty long and could be even infinite. To supply any changes to the user’s app we should:
If the user doesn’t update the app it will still use the old SDK version, so changes may never reach a part of the audience.
However, it’s often needed to make some changes on the user side ASAP in order to fix some behavior or improve UX. It is possible to do this via the server-side settings for the client (SDK).
Using the server-side configuration publishers will be able to control the SDK properties remotely.
Background
In the nearest releases, we are going to provide publishers the ability to customize some display properties e.g:
The list of customized properties will grow eventually.
From the SDK perspective, the best way to support such customization is to receive configuration properties from the PBS and apply them at runtime. So publishers can rollout or rollback changes on the flight.
Objectives
The publisher should be able to store the properties in the format of a JSON object with custom key-value pairs on the PBS. For instance:
The SDK should be able to request these properties via an existing or new endpoint.
Proposed solutions
Put properties into the stored requests
The configuration properties could be added directly to the stored requests. With respective paths
ext.prebid.ad_unit_config
for stored impression, andext.prebid.sdk_config
for stored requests.Put properties into the separated stored configs
The configuration properties could be added as separated stored configs. Like stored requests.
Return configs in the bid response
The fields
bid.ext.prebid.ad_unit_config
andbid.ext.prebid.sdk_config
could be used for providing the configuration properties.In order not to send configs in each bid response, PBS may require the additional flag in the bid request e.g.
includeclientconfig
. If PBS receives the bid request withincludeclientconfig
it should attach the configs for the stored request and stored impression to the bid response. If there is no flagincludeclientconfig
in the request, configs should be ignored. SDK in its own turn may request configs once per hour, for example. Or it also can be customizable viaext.prebid.sdk_config
.Introduce a new endpoint
GET /stored_config
with config ID can return respective configuration properties.The text was updated successfully, but these errors were encountered: