-
Notifications
You must be signed in to change notification settings - Fork 75
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
Allow customer_id to be specified in identify URL #111
Conversation
@jeremyw @jrbeck, please let me know if you have any feedback on the current version of the PR? After some feedback within CIO Engineering, I've moved the support for We also talked internally about making a breaking change in the API, to make the base |
@richdawe-cio This makes sense to me. My initial thought when I saw the bug was to do something similar, but I had considered naming the Thanks for the work on this! I'm optimistic that we can get this changed rolled out to production early this week if 5.3.0 is published. Already have a branch ready to go based on these changes. |
@jeremyw I've just published 5.3.0 to RubyGems. Thanks for your help and feedback! |
@richdawe-cio We are live in production and this definitely looks to have resolved the problem! Thank you! |
@jeremyw I'm glad to hear that. Thanks for letting us know. |
This is based on work by @jrbeck in #102 and @trwalzer in #88 and updated to work with the main branch. After some discussion within Customer.io Engineering, the functionality into the
identify
method, with a newcustomer_id
attribute on that. It works in the same way as when it was a separate method.These changes are necessary to allow identify operations where the person is identified by their email address, not
id
orcio_id
. It updatesidentify
so the identifier can be specified separately from the attributes, using thecustomer_id
attribute. So you can e.g.: select a person based on their email address and set up theirid
and other attributes. See for example this use-case.Notes to CIO reviewers:
customer_id
as their first parameter in the identify operation. I'm not sure why the Ruby client library does not. Supporting thecustomer_id
attribute is bringing the Ruby client library.customer_id
on the person.identify
work like other client libraries - first arg is customer_id, attributes follow - so thatcustomer_id
can be created as a person attribute again.