Content
You are here:
Extending / Adding API functionality from Plugins
Added by Oliver Günther almost 10 years ago
With the introduction of external authentication schemes using OmniAuth, we’re creating and registering new users in our OpenProject instance.
As users are granted SSH access to Git repositories managed from OpenProject, we need the functionality to update OpenProject users based on (un-)lock and delete events in the external authentication source.
✓ Deleting Users (implemented in V3)
✗ Locking Users
Two questions arise:
1. Is there an official / standard (planned?) way to add functionality to the official API through plugins? (e.g., /api/plugin//<>)
2. If above is not planned / desirable, should the plugin extend on the Grape API to mount a new, custom module - Or should it describe a custom API?
Replies (1)
Hi Oliver,
good to hear from you.
Yes locking a user through the API is a desireable feature. So I like the idea to add this to the API v3 as part of the OpenProject core (not as a plugin).
The best way is to first propose a change to the api documentation. After this PR is merged then you can be sure that your PR will be accepted.
You can find the documentation of the API v3 here:
-> https://github.com/opf/openproject/blob/dev/doc/apiv3-documentation.apib
Please let me know if you need support for this.
Regards
Niels