Background:
When adding a scope by a tenant, the user is able to select multiple definitions and add them at once.
AT:
- Create an additional add scope endpoint to support adding multiple scopes
- When multiple scopes are provided they are atomically merged with the existing ones, which means:
- Do not return any conflicts if the user adds a scope for a definition (unique combination of type and key) that already exists
- for an existing scope, if users select an additional tenant, then just add that (perform an update) (idempotent)
- the endpoint is documented in the collection scope api documentation
- the endpoint is a PUT endpoint as it will have PUT semantics (idempotent)
- there is a front-end follow up ticket to use this endpoint ->
OPT-2926
Hints:
- The order of the scopes/tenants does not matter during the adding since the front-end always reloads the scopes using the get scopes endpoint after adding the scopes anyway.
- We keep the old add scope endpoint for backwards compatibility. It will be removed with
OPT-2906