Skip to content

Set x-synthetic-id header on integration routes#255

Open
prk-Jr wants to merge 2 commits intomainfrom
205-synthetic-id-header-x-synthetic-id-is-not-being-set-on-integration-re-hosted-into-first-party-publisher-domain
Open

Set x-synthetic-id header on integration routes#255
prk-Jr wants to merge 2 commits intomainfrom
205-synthetic-id-header-x-synthetic-id-is-not-being-set-on-integration-re-hosted-into-first-party-publisher-domain

Conversation

@prk-Jr
Copy link
Collaborator

@prk-Jr prk-Jr commented Feb 6, 2026

Integration proxy responses were missing the x-synthetic-id header because handle_proxy dispatched to integrations without adding it. This caused identity tracking to break for first-party re-hosted integrations like Permutive's secure-signal endpoint.

Centralizing the header logic in handle_proxy ensures all current and future integrations automatically include the synthetic ID, rather than requiring each integration to implement it manually.

Fixes #205

Integration proxy responses were missing the x-synthetic-id header
because handle_proxy dispatched to integrations without adding it.
This caused identity tracking to break for first-party re-hosted
integrations like Permutive's secure-signal endpoint.

Centralizing the header logic in handle_proxy ensures all current
and future integrations automatically include the synthetic ID,
rather than requiring each integration to implement it manually.

Fixes #205
Copy link
Collaborator

@aram356 aram356 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good start but should use funcitons in cookies.rs

Please don't make the feature branch have this long name. Please stick to feature/short-name

) -> Option<Result<Response, Report<TrustedServerError>>> {
if let Some((proxy, _)) = self.find_route(method, path) {
Some(proxy.handle(settings, req).await)
// Generate synthetic ID before consuming request
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🔧 Please use functions in cookies.rs We already have utils for this kind operations

Replaces inline cookie parsing with handle_request_cookies() and
parse_cookies_to_jar() from cookies.rs for consistency.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Synthetic ID Header [x-synthetic-id] is not being set on /integration re-hosted into first party publisher domain

2 participants