noahl
(Noah Lovell)
April 30, 2025, 12:38pm
1
We have a certification program and want to allow users to join the certified group after confirming their certification ID.
The current idea:
Have a button in a plugin outlet
On click, open a modal for them to input their certification ID
Send the ID to the API, and display a message according to the result
Add them to the group if they’re verified
I want to understand if this is best suited as a Plugin or a Theme component since it’s dealing with API calls
1 Like
This is the full monty:
Summary: Use Verifiable Credentials to grant access to groups and badges in Discourse.
GitHub: https://github.com/coopcreds/discourse-verifiable-credentials
Install: Follow the plugin installation guide .
Demo
You can try this plugin out your self by following the steps in the link below. You’ll be issued a test “Cooperative Credential” which you can then use to gain access to a group and be granted a badge on the cooperative credentials Discourse instance. Note that the…
But depends if your certification programme grants verifiable credentials …
1 Like
noahl
(Noah Lovell)
April 30, 2025, 12:51pm
3
I think this might be a little different Our certification is “someone finished a course and where given a certification with an ID”.
It’s an in house system, rather than an exisiting platform if that makes any difference. Currently, it takes 2 pieces of info (the users email, and the ID) and will return the certifications they have completed
2 Likes
You might get away with a User Field which are exposed on the API.
If not, you’ll need a plugin.
But you’ll need to work out who can see what.
If this is confidential to the User or it’s ok for others to see it etc.
See:
The FAQ isn’t crystal clear about this, so I want to get confirmation.
If I have a custom user field that is neither:
Show[n] on public profile
Show[n] on user card
Then it’s effectively private, visible only to the user, admins & moderators?
2 Likes
noahl
(Noah Lovell)
April 30, 2025, 1:04pm
5
Amazing!
So thinking out aloud here:
User field that is only visible to the user themselves (plus Admins etc)
Webhook when “user is updated” should contain contain the ID
Send the data to a “middle service” that can check the certification API, and then call the add to group Discourse API
Sounds like the most straight forward approach, rather than a plugin
2 Likes