-
Notifications
You must be signed in to change notification settings - Fork 245
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
FLEDGE + event-level Attribution Reporting API #281
Comments
/cc @johnivdel |
This was discussed in the WICG/conversion-measurement-api call, minutes here: https://github.com/WICG/conversion-measurement-api/blob/main/meetings/2022-04-04-minutes.md To summarize my understanding/some of that discussion: The current design for Fenced Frames Ad Reporting makes it possible to associate an id generated inside the fenced frame with contextual information . Event-level reports generated inside the fenced frame will therefore be joinable to the same contextual information on the server (using 2 server-side joins instead of 1). The ability to join with contextual info is only given to the buyer/seller. If there are other reporters present in the Fenced Frame using Attribution Reporting, they will not be able to access this info. Even if we were able to send some kind of contextual id in these cases, it would not be meaningful except to the party which generated it. Is this an issue here? Note that with this approach, it will not be possible to generate other attribution inputs (priority / filters) based on contextual information (only information within the fenced frame).
Agreed this is better to discuss as a separate issue. The limitation noted above will be more problematic for aggregatable reports, as you may want to ability to set aggregation keys based on contextual info. |
Thanks for the summary, John. The proposed FF Ad Reporting-based approach solves my original use case. At the moment I'm afraid I'm not in a position to give any useful input on the potential issues you mentioned (third party reporters / ARA inputs based on ctx information). For now, perhaps it'd be good to keep these questions in mind while thinking about #289. If #289 results in a dedicated FLEDGE-ARA integration, perhaps there would also be a natural way to support event-level use-case in a way that avoids these issues? |
As we are preparing to test ARA+FLEDGE, we realized the proposed approach of generating an id within the fenced frame is not feasible when the click happens on a nested ("product") fenced frame (when working with Ads Composed of Multiple Pieces). The difficulty stems from the fact that I was wondering, perhaps one of these approaches could work?
@johnivdel , please let me know if any of those sounds good to you, or if you see other approaches that I've missed (perhaps ones that do not require any changes in the browser implementation?). |
Actually, both of them are. (In both (1) and (2) the toplevel frame needs to know that a click on the nested frame happened, so that it can call reportEvent.) |
Responded with a proposed fix in #332 (comment) |
@shivanigithub we looked over the fix described in #391 again and and it seems there is a conflict between:
Effectively, when user clicks on more than one component ad, we won't be able to join the conversion with contextual information from any of them. Perhaps the source registration could be somehow connected to fenced frame event reporting?
This would ensure there is only one source registered among all component ads. |
@johnivdel , @csharrison for thoughts on this. |
Let me restate the problem to make sure that I am understanding correctly. With the design described in this issue:
This breaks down because:
As @maciejkowalczyk suggests, integrating attribution reporting with the |
@csharrison, I've missed that aggregate ARA issue you are referring to. My version only adds the optional |
Yeah I could go either way with what sets the |
for reportEvent beacon. If "AttributionReportingCrossAppWeb" feature is enabled, Attribution-Reporting-Support header is also added. This change is a part of the solution for Github Issue 289[1] and 281[2] on Attribution Reporting and FLEDGE Explainer[3]. [1]: WICG/turtledove#289 [2]: WICG/turtledove#281 [3]: https://github.com/WICG/attribution-reporting-api/blob/main/EVENT.md#registering-attribution-sources Change-Id: Id4c8cc00dcb48a65b36900572653aa2c407ef3cf Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/4175473 Reviewed-by: Shivani Sharma <shivanisha@chromium.org> Commit-Queue: Xiaochen Zhou <xiaochenzh@chromium.org> Reviewed-by: Nan Lin <linnan@chromium.org> Cr-Commit-Position: refs/heads/main@{#1096966}
Hi,
I was wondering, has there been any discussion on how event-level Attribution Reporting API and FLEDGE fit together?
More specifically, I was wondering how navigational attribution sources (i.e. clicks) should be registered in FLEDGE.
attributionsrc
parameter may be added to the anchor tag (see link).One implication of 1. + 2. is that the click-side data (
source_event_id
in ARA naming) will have a rather limited utility.In my view, a more useful
souce_event_id
could be derived fromperBuyerSignals
(a "contextual source_event_id"):reportWin
and Fenced Frames Ads Reporting, which allow us to create a 'contextual event', and decorate it with information whether there was a click.It seems that the problem is technical - we are unable to create the "contextual source_event_id", because FLEDGE forbids injecting any contextual information into the ad. If there was a way to tell the browser: "this is the contextual source_event_id for the ad, but make sure not to reveal it within the Fenced Frame", that would solve the problem.
Please treat this as a discussion starter, I'd be really curious if you have any thoughts on this.
// There is also the question of how aggregate ARA fits into FLEDGE, but I guess it's better to discuss it in a separate issue? It seems in the aggregate case the source registration could be based on more signals than just contextual.
Best regards,
Jonasz
The text was updated successfully, but these errors were encountered: