Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
Updates the Memora upsertProfile action to support dynamically loaded profile identifiers across all Memora trait groups (not just Contact email/phone), aligning the mapping UI and payload-building logic with Memora store-specific trait definitions.
Changes:
- Converted
profile_identifiersto a dynamic key/value object sourced from Memora trait groups, and madeprofile_traitsoptional. - Added dynamic-field fetching that separates identifier traits (those with
idTypePromotion) from regular string traits. - Updated validation logic and tests to allow “two identifiers, no traits” while enforcing at least one identifier and at least two total mapped fields.
Reviewed changes
Copilot reviewed 4 out of 4 changed files in this pull request and generated 3 comments.
| File | Description |
|---|---|
| packages/destination-actions/src/destinations/memora/upsertProfile/index.ts | Makes identifiers dynamic across trait groups, adds trait-group field fetching, and updates validation + trait-group payload building. |
| packages/destination-actions/src/destinations/memora/upsertProfile/generated-types.ts | Updates payload typings for dynamic identifiers and optional traits. |
| packages/destination-actions/src/destinations/memora/upsertProfile/tests/index.test.ts | Updates mappings/tests for new identifier key format and adds coverage for dynamic identifier keys. |
| packages/destination-actions/src/destinations/memora/tests/snapshot.test.ts | Updates snapshot inputs to use the new identifier key format. |
packages/destination-actions/src/destinations/memora/upsertProfile/index.ts
Show resolved
Hide resolved
packages/destination-actions/src/destinations/memora/upsertProfile/index.ts
Show resolved
Hide resolved
packages/destination-actions/src/destinations/memora/upsertProfile/index.ts
Show resolved
Hide resolved
packages/destination-actions/src/destinations/memora/upsertProfile/index.ts
Show resolved
Hide resolved
This file contains hidden or 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
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.
As of now only email and phone identifiers are supported in upsertProfile action of Memora destination. We need to support all and fetch them directly.
https://twilio-engineering.atlassian.net/browse/STRATCONN-6683
Testing
Demo Link
Include any additional information about the testing you have completed to
ensure your changes behave as expected. For a speedy review, please check
any of the tasks you completed below during your testing.
Security Review
Please ensure sensitive data is properly protected in your integration.
type: 'password'New Destination Checklist
verioning-info.tsfile. example