With scopes you indicate which of a member's details you want access to. You can choose from:
openid profile email address phone bank profile_custom groups
Your app may only ask for the scopes listed under your app's Maximal access scope; a new app may only ask for openid. If you name no scopes, we ask for openid profile. Below is what each scope gives you through /oauth/userinfo.
openid
Needed for the ID token and for /oauth/userinfo. You always get:
subanduser_id: the member's ID in Congressus.is_active: whether the member is active.
profile
The member's basic details:
preferred_usernameandusername: the member's username in Congressus Manager.name: the full name.given_name,family_nameandnickname: the first name, the last name and the nickname.picture: the address of the profile picture, or empty when the member has none.gender: the gender.birthdateandbirthday: the date of birth, in ISO format.member_statusandmember_status_id: the name and ID of the current member status.member_status_since: since when the member has this member status.member_since: when the member got their first member status.
email: the member's email address.
address
The member's primary address, under address:
formatted: the full address.street_address: the street and house number.locality: the city.region: the province, when known.postal_code: the postal code.country: the country.
phone
The member's mobile number:
phone_number: with a plus and country code, such as+31612345678.phone: without the plus, such as31612345678.
bank
IBAN: the member's account number.BIC: the BIC of that account.
profile_custom
Your association's own fields, under custom, as pairs of the field's reference and its value. These often hold sensitive information, so only give this scope to an app that really needs it.
groups
The member's published groups, under groups. For each group, keyed by the group's slug, you see whether the member is still active in it (active) and its name (name).
Example with every scope
{
"sub": "1234",
"user_id": 1234,
"is_active": true,
"preferred_username": "jdevries",
"given_name": "Jan",
"family_name": "de Vries",
"nickname": "Jan",
"birthdate": "2001-04-12",
"username": "jdevries",
"name": "Jan de Vries",
"picture": "https://...",
"gender": "...",
"birthday": "2001-04-12",
"member_status": "Lid",
"member_status_id": 12,
"member_status_since": "2022-09-01T00:00:00",
"member_since": "2020-09-01T00:00:00",
"email": "jan@example.nl",
"address": {
"formatted": "...",
"street_address": "Dorpsstraat 1",
"locality": "Utrecht",
"region": "Utrecht",
"postal_code": "1234 AB",
"country": "Nederland"
},
"phone_number": "+31612345678",
"phone": "31612345678",
"IBAN": "NL91ABNA0417164300",
"BIC": "ABNANL2A",
"custom": {
"field_reference_1": "value"
},
"groups": {
"bestuur": {"active": true, "name": "Bestuur"}
}
}
