Handle Uniqme (incl assertions and connected accounts)
We need to create new schema and update existing ones to handle Uniqme assertions. This is a list of fields that will be populated when a user links an external account e.g. Twitter, LinkedIn, Github to their Raytio account. Some example field names:
- assertion_start_year: The year the account or credential was created or is valid from
- assertion_start_quarter: The calendar quarter the account or credential was created or is valid from
- assertion_update_year: The year the account or credential was last updated
- assertion_update_quarter: The calendar quarter the account or credential was last updated
- assertion_latest_activity_year: The year the account or credential last had activity recorded against it
- assertion_latest_activity_quarter: The calendar quarter the account or credential last had activity recorded against it
- assertion_lifetime_activity_count_rounded: The number of activities recorded against the account or credential (rounded)
- assertion_lifetime_activity_count_provider_rounded: The number of "posts" recorded against the account or credential or the number of times the account provided goods or services (rounded)
- assertion_lifetime_activity_count_consumer_rounded: The number of "comments" recorded against the account or credential or the number of times the account consumed goods or services (rounded)
- assertion_lifetime_activity_count_react_received_rounded: The number of "reactions" created by the account or credential (rounded)
- lifetime_activity_count_react_received_positive_rounded: The number of positive "reactions" created by the account or credential (rounded)
- lifetime_activity_count_react_received_negative_rounded: The number of negative "reactions" created by the account or credential (rounded)
- lifetime_activity_count_react_sent_rounded: The number of "reactions" recorded against the account or credential (rounded)
- lifetime_activity_count_react_sent_positive_rounded: The number of positive "reactions" recorded against the account or credential (rounded)
- lifetime_activity_count_react_sent_negative_rounded: The number of negative "reactions" recorded against the account or credential (rounded)
- assertion_lifetime_followers_count_rounded: The number of other users ("followers") that track or follow the account or credential (rounded)
- assertion_lifetime_following_count_rounded: The number of other users that the account or credential follows or watches (rounded)
- assertion_lifetime_rating_rounded: The service-specific rating attributed to the account or credential (rounded). Used when the rating has no upper bound and is not of the type n out of m e.g. Karma or points. Usually mutually exclusive with
assertion_lifetime_rating_normalized
- assertion_lifetime_rating_normalized: The service-specific rating attributed to the account or credential (normalized to the standard Raytio 0-10 scale). Used when the rating is of the type n out of m e.g. 4 stars out of 5. Usually mutually exclusive with
assertion_lifetime_rating_logarithmic
andassertion_lifetime_rating_rounded
Firstly we need to created the globally unique fields (GUFs) schema. Some examples that have already been done (on branch 79-uniqme-schema-updates):
Then add the relevant fields to the various ss_Connected_Account
schema (initially just ss_Connected_Account_Twitter
). For which GUFs relate to which service/schema and for further details about Uniqme refer to https://gitlab.com/raytio/documentation/documentation-private/-/raw/main/docs/products/uniqme.md. For example for X/Twitter
the list is:
- assertion_start_year: The year the account was created
- assertion_start_quarter: The calendar quarter the was created
- assertion_update_year: The year the account was last updated
- assertion_update_quarter: The calendar quarter the account was last updated
- assertion_latest_activity_year: The year the account last had activity recorded against it
- assertion_latest_activity_quarter: The calendar quarter the account last had activity recorded against it
- assertion_lifetime_activity_count_rounded: The number of activities recorded against the account or credential (rounded)
- assertion_lifetime_activity_count_provider_rounded: The number of "tweets" recorded against the account (rounded)
- assertion_lifetime_activity_count_consumer_rounded: The number of "reposts" recorded against the account or credential (rounded)
- assertion_lifetime_activity_count_react_received_rounded: The number of "likes" recorded against tweets generated by the account (rounded)
- assertion_lifetime_followers_count_rounded: The number of other users ("followers") that track or follow the account or credential (rounded)
- assertion_lifetime_following_count_rounded: The number of other users that the account or credential follows or watches (rounded)
To create/update schema use the API: https://gold-star-198393.postman.co/workspace/Raytio~d2cb0fce-b8da-4b80-8605-e2e8814339ee/request/5967338-e7672353-7b29-4398-b803-995f427eeb9b?ctx=documentation
For more details about OAuth2 and connected accounts refer to https://gitlab.com/raytio/documentation/documentation-private/-/raw/main/docs/products/oauth-token-service.md