-
Notifications
You must be signed in to change notification settings - Fork 2
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
Add GPP/TCF cmpapi integration to respect device access in EU/CA/US #152
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
zapo
force-pushed
the
cmp-integration
branch
from
December 12, 2024 18:39
bbe7e39
to
26124b4
Compare
zapo
changed the title
Add initial draft for GPP/TCF cmpapi integration for consent handling in EU/CA/US
Add initial draft for GPP/TCF cmpapi integration fordevice access consent handling in EU/CA/US
Dec 12, 2024
zapo
changed the title
Add initial draft for GPP/TCF cmpapi integration fordevice access consent handling in EU/CA/US
Add initial draft for GPP/TCF cmpapi integration for device access consent handling in EU/CA/US
Dec 12, 2024
zapo
changed the title
Add initial draft for GPP/TCF cmpapi integration for device access consent handling in EU/CA/US
Add GPP/TCF cmpapi integration to respect device access in EU/CA/US
Dec 12, 2024
zapo
force-pushed
the
cmp-integration
branch
4 times, most recently
from
December 16, 2024 17:16
4ca7f91
to
d4e2bd6
Compare
zapo
force-pushed
the
cmp-integration
branch
from
December 16, 2024 17:27
d4e2bd6
to
21d66f1
Compare
patmmccann
reviewed
Dec 16, 2024
patmmccann
reviewed
Dec 16, 2024
zapo
force-pushed
the
cmp-integration
branch
from
December 17, 2024 19:51
dcdabbe
to
00f65f5
Compare
zapo
force-pushed
the
cmp-integration
branch
from
December 17, 2024 21:15
00f65f5
to
bcf17b3
Compare
zapo
force-pushed
the
cmp-integration
branch
from
December 18, 2024 18:56
5732ec7
to
9cd0db3
Compare
zapo
force-pushed
the
cmp-integration
branch
from
December 18, 2024 19:04
9cd0db3
to
890ebb6
Compare
zapo
force-pushed
the
cmp-integration
branch
from
December 19, 2024 15:57
5e59a4d
to
1a71560
Compare
zapo
force-pushed
the
cmp-integration
branch
from
December 19, 2024 16:13
1a71560
to
11709fc
Compare
patmmccann
approved these changes
Jan 6, 2025
lemairejoel
approved these changes
Jan 7, 2025
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
In optable-web-sdk we currently defer the responsibility of detecting regulations and handling consent to the user which usually results in gating the load of the SDK which is not ideal.
In this PR we propose to detect regulation that should apply and integrate directly with CMP APIs (namely TCF and GPP) to gather visitor consent. Based on the detected regulation and consent, device access may be granted.
To do so, this PR introduces a new "consent" config property holding either a static consent object passed by the user, or automatically inferred:
This also updates the config object passed to instanciate the SDK to accept an optional consent retrieval configuration:
When absent, consent is granted for device access to preserve existing behavior. Eventually this may be changed to "cmpapi". Users should start passing
consent: { static: { deviceAccess: true, reg: null } }
if they want to preserve the existing behavior.Regulation Detection & device access
Regulation detection is currently implemented by looking up the timezone of the device and the languages supported.
When no regulation is detected, device access is automatically granted.
Signals passing to the DCN
Additionally to gating device access, the regulation and corresponding consent strings are passed to any DCN call as query strings as soon as they are available and set. This allows the DCN to degrade behavior based on applicable regulation, consent vs those APIs purpose