Appboy / appboy-segment-ios

Braze's side-by-side iOS SDK integration with Segment.IO
https://www.braze.com
Other
18 stars 41 forks source link

Calling identify with braze_id in the context traits payload doesn't update anything. #59

Closed fal3 closed 2 years ago

fal3 commented 2 years ago

https://segment.com/docs/personas/identity-resolution/identity-resolution-settings/

Following the documents braze_id in the identify payload doesnt automatically map as the user ID in braze.

Bucimis commented 2 years ago

Hi @fallaha13, in the side-by-side integration, you should use the userId field to set the external user Id in Braze (https://github.com/Appboy/appboy-segment-ios/blob/a7a58bf045140ac5d4303e38851993cefb07c53b/Pod/Classes/SEGAppboyIntegration.m#L104)

fal3 commented 2 years ago

My company has a different use case for user ID. The field User ID needs to be a different value then what we populate braze with.

Bucimis commented 2 years ago

@fallaha13 in that case I would recommend you call the Braze SDK directly with your desired Id, e.g. [[Appboy sharedInstance] changeUser:@"my-external-user-id"];

fal3 commented 2 years ago

If we do that creates a duplicate user within Braze.

fal3 commented 2 years ago

If we do that creates a duplicate user within Braze.

@Bucimis Like I said I tried that and it created duplicate users. We had to manually overwrite the segment app boy integration identify call to have it work properly. I made changes here to avoid confusion for future adopters.

https://github.com/Appboy/appboy-segment-ios/pull/60

fal3 commented 2 years ago

Does anyone look at these issues? Is the repo dead?

davidbielik commented 2 years ago

Hi @fallaha13 the value passed into changeUser is meant to be a customer-supplied value so that you can identify users regardless of which device they log into.

For this reason, it's not a supported integration pattern to pass the braze_id. Typically, this is not available client-side, and only available for use with our REST API, but may be passed in through Segment's server.

My company has a different use case for user ID. The field User ID needs to be a different value than what we populate braze with.

It sounds like you have a specific integration you're trying to accomplish, which some of our other features (like User Aliases) may solve.

Please reach out to support@braze.com and provide your desired setup, code samples, etc. and our support team can help you out.

I'm going to close this out since there are no changes we expect to make here.