Skip to content

Commit 59a3eb2

Browse files
committed
Refactor editMetadata API parameter handling
Updated NativeApi.edit_metadata to construct URL and parameters more cleanly for persistentId and non-persistentId cases. Also reformatted some assert statements for improved readability in both api.py and test_edit.py.
1 parent 50a5e26 commit 59a3eb2

1 file changed

Lines changed: 6 additions & 3 deletions

File tree

pyDataverse/api.py

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1536,15 +1536,18 @@ def edit_dataset_metadata(
15361536
200: metadata updated
15371537
15381538
"""
1539+
params = {"replace": "true"} if replace else {}
1540+
15391541
if is_pid:
1540-
url = "{0}/datasets/:persistentId/editMetadata/?persistentId={1}".format(
1541-
self.base_url_api_native, identifier
1542+
url = "{0}/datasets/:persistentId/editMetadata".format(
1543+
self.base_url_api_native
15421544
)
1545+
params["persistentId"] = identifier
15431546
else:
15441547
url = "{0}/datasets/editMetadata/{1}".format(
15451548
self.base_url_api_native, identifier
15461549
)
1547-
params = {"replace": True} if replace else {}
1550+
15481551
resp = self.put_request(
15491552
url=url,
15501553
data=metadata,

0 commit comments

Comments
 (0)