Closed mkimberlin closed 3 weeks ago
@mkimberlin is there an idea of the different settings that we'll want to have control over? Mainly asking to anticipate what we'll be needing on the #2356 side of things.
I think there are a few categories of settings we will likely see out of the gate; one could be theming-related settings potentially (logo, primary/secondary/tertiary colors, etc.), another could be enabling and configuring various integrations (mailjet for example), and there might be some other values from our run.sh
script variables that would be better served as admin configurable.
@mkimberlin since the PUT endpoint requires us to pass a valid setting object to it, I have left this endpoint as /services/settings
instead of adding the name path variable as we can just get that from the object and also verify the ID.
As a System Administrator, I want REST services to manage setting values, so that I can configure the application's behavior through the API.
Acceptance Criteria:
name
(VARCHAR, PRIMARY KEY, UNIQUE): Name of the setting, corresponding to an option contained in the settings enum.value
(TEXT): The current value for the setting./services/settings
should retrieve all setting name-value pairs from the database./services/settings/{name}
should allow updating the value for a specific setting.CAN_ADMINISTER_SETTINGS
should be created and used for protecting both of these new endpoints.