authgear-server
authgear-server copied to clipboard
Unify the terminology of "User Profiles" vs "Attributes"
Notice that right now we use "User Profiles" and "Attributes" changeably. (e.g. look at our doc)
I believe the confusion comes from:
- On Admin Portal or when explain to end users, it is easier to use the term "User Profiles"
- However, in Admin API or user data, we called it
standardAttributes
orcustomAttributes
Assigned it to @fungc-io first, as I believe this issue need some discussion before deciding the next step.
I think it would be better if we:
- Always call it User Profiles, in documentation and in our APIs
- Except when the use case is OIDC, and **IF OIDC DOES USE THE TERM ATTRIBUTES**, than we use attributes whenever it is OIDC specific.
Thoughts? @louischan @fungc-io
cc: @pius
In OIDC, they are called Standard Claims.
So maybe we should drop the term attributes at all?
But we have been using the term attributes in public API like in configuration, GraphQL schema, and user import API, etc. It is hard to drop it now.
In the spec, User profile and attributes are defined as
User profile consists of standard attributes, custom attributes and roles.
So user profile = standard attributes + custom attributes
. I think we can stick with the term "user profile" if we refer to any attributes, and use "custom attributes" when we talk about the use cases that make use of custom attributes.
I guess what we are actually confused is standard attributes
vs standard claims
?
attributes or profiles vs claims would be a bit confusing. But I think this is unavoidable as claims is used by OIDC.
User Profiles and Attributes is the confusion that we introduce on our own.
BTW, I think we should really avoid anything that's confusing like "User Profile = standard attributes + custom attributes" in future, that's just creating confusion to everyone.
I think if we procasinate it, we should at least make sure all of our documents use User Profiles
, and only use the term standard_attributes
or custom_attributes
when we refer to the config / graphQL schema or user import API, and never use the term attribute
Yup, i agree we should use "User Profiles" in the doc menu you shared. It should be "Update User Profile".
It would be less confusing if we describe the structure of a "user profile" with clarity in https://docs.authgear.com/how-to-guide/user-management/user-profile
We should in the intro mention explicitly there are 3 components: standard attributes, custom attributes, and roles.
@pius, what do you think?
We should in the intro mention explicitly there are 3 components: standard attributes, custom attributes, and roles.
Now that we have roles and groups, I think we should say user profile is standard attributes + custom attributes.