You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Dataverse can now track the history of role assignments, allowing administrators to see who assigned or revoked roles, when these actions occurred, and which roles were involved. This feature helps with auditing and understanding permission changes over time.
4
+
5
+
## Key components of this feature:
6
+
7
+
-**Feature Flag**: The functionality can be enabled/disabled via the `ROLE_ASSIGNMENT_HISTORY` feature flag (default is `off`)
8
+
-**UI Integration**: New history panels on permission management pages showing the complete history of role assignments/revocations
9
+
-**CSV Export**: Administrators can download the role assignment history for a given collection or dataset (or files in a dataset) as a CSV file directly from the new panels
10
+
-**API Access**: New API endpoints provide access to role assignment history in both JSON and CSV formats:
Copy file name to clipboardExpand all lines: doc/sphinx-guides/source/admin/integrations.rst
-5Lines changed: 0 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -240,11 +240,6 @@ Discoverability
240
240
241
241
A number of builtin features related to data discovery are listed under :doc:`discoverability` but you can further increase the discoverability of your data by setting up integrations.
242
242
243
-
SHARE
244
-
+++++
245
-
246
-
`SHARE <http://www.share-research.org>`_ is building a free, open, data set about research and scholarly activities across their life cycle. It's possible to add a Dataverse installation as one of the `sources <https://share.osf.io/sources>`_ they include if you contact the SHARE team.
The CSV response has column headers mirroring the JSON entries. They are internationalized (when internationalization is configured).
1557
+
1558
+
Note: This feature requires the "role-assignment-history" feature flag to be enabled (see :ref:`feature-flags`).
1559
+
1488
1560
Datasets
1489
1561
--------
1490
1562
@@ -4136,25 +4208,201 @@ Delete files from a dataset. This API call allows you to delete multiple files f
4136
4208
4137
4209
curl -H "X-Dataverse-key:$API_TOKEN" -X PUT "$SERVER_URL/api/datasets/:persistentId/deleteFiles?persistentId=$PERSISTENT_IDENTIFIER" \
4138
4210
-H "Content-Type: application/json" \
4139
-
-d '{"fileIds": [1, 2, 3]}'
4211
+
-d '[1, 2, 3]'
4140
4212
4141
4213
The fully expanded example above (without environment variables) looks like this:
4142
4214
4143
4215
.. code-block:: bash
4144
4216
4145
4217
curl -H "X-Dataverse-key:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -X PUT "https://demo.dataverse.org/api/datasets/:persistentId/deleteFiles?persistentId=doi:10.5072/FK2ABCDEF" \
4146
4218
-H "Content-Type: application/json" \
4147
-
-d '{"fileIds": [1, 2, 3]}'
4219
+
-d '[1, 2, 3]'
4148
4220
4149
-
The ``fileIds``in the JSON payload should be an array of file IDs that you want to delete from the dataset.
4221
+
The JSON payload should be an array of file IDs that you want to delete from the dataset.
4150
4222
4151
4223
You must have the appropriate permissions to delete files from the dataset.
4152
4224
4153
4225
Upon success, the API will return a JSON response with a success message and the number of files deleted.
4154
4226
4155
4227
The API call will report a 400 (BAD REQUEST) error if any of the files specified do not exist or are not in the latest version of the specified dataset.
4156
-
The ``fileIds``in the JSON payload should be an array of file IDs that you want to delete from the dataset.
4228
+
The JSON payload should be an array of file IDs that you want to delete from the dataset.
4229
+
4230
+
.. _api-dataset-role-assignment-history:
4231
+
4232
+
Dataset Role Assignment History
4233
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4234
+
4235
+
Get the history of role assignments for a dataset. This API call returns a list of role assignments and revocations for the specified dataset.
The CSV response has column headers mirroring the JSON entries. They are internationalized (when internationalization is configured).
4300
+
4301
+
Note: This feature requires the "role-assignment-history" feature flag to be enabled (see :ref:`feature-flags`).
4302
+
4303
+
Dataset Files Role Assignment History
4304
+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
4305
+
4306
+
Get the history of role assignments forthe filesin a dataset. This API call returns a list of role assignments and revocations forall filesin the specified dataset.
The JSON response for this call is the same as for the /api/datasets/{id}/assignments/history call above with the exception that definedOn will be a comma separated list of one or more file ids.
4339
+
4340
+
To retrieve the historyin CSV format, change the Accept header to "text/csv":
The CSV response for this call is the same as for the /api/datasets/{id}/assignments/history call above with the exception that definedOn will be a comma separated list of one or more file ids.
4357
+
4358
+
Note: This feature requires the "role-assignment-history" feature flag to be enabled (see :ref:`feature-flags`).
4359
+
4360
+
Update Dataset License
4361
+
~~~~~~~~~~~~~~~~~~~~~~
4362
+
4363
+
Updates the license of a dataset by applying it to the draft version, or by creating a draft if none exists.
4364
+
4365
+
The JSON representation of a license can take two forms, depending on whether you want to specify a predefined license or define custom terms of use and access.
4366
+
4367
+
To set a predefined license (e.g., CC BY 4.0), provide a JSON body with the license name:
4368
+
4369
+
.. code-block:: json
4370
+
4371
+
{
4372
+
"name": "CC BY 4.0"
4373
+
}
4374
+
4375
+
To define custom terms of use and access, provide a JSON body with the following properties. All fields within ``customTerms`` are optional, except for the ``termsOfUse`` field, which is required:
0 commit comments