<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<style type="text/css" style="display:none"><!--P{margin-top:0;margin-bottom:0;} .ms-cui-menu {background-color:#ffffff;border:1px rgb(171, 171, 171) solid;font-family:'Segoe UI WPC','Segoe UI',Tahoma,'Microsoft Sans Serif',Verdana,sans-serif;font-size:10pt;color:rgb(51, 51, 51);} .ms-cui-menusection-title {display:none;} .ms-cui-ctl {vertical-align:text-top;text-decoration:none;color:rgb(51, 51, 51);} .ms-cui-ctl-on {background-color:rgb(223, 237, 250);opacity: 0.8;} .ms-cui-img-cont-float {display:inline-block;margin-top:2px} .ms-cui-smenu-inner {padding-top:0px;} .ms-owa-paste-option-icon {margin: 0px 6px 0px 6px;vertical-align:middle!important;padding-bottom: 2px;display:inline-block;} .ms-rtePasteFlyout-option:hover {background-color:rgb(223, 237, 250) !important;opacity:1 !important;} .ms-rtePasteFlyout-option {padding:8px 4px 8px 4px;outline:none;} .ms-cui-menusection {float:left; width:85px;height:24px;overflow:hidden}.wf {speak:none; font-weight:normal; font-variant:normal; text-transform:none; -webkit-font-smoothing:antialiased; vertical-align:middle; display:inline-block;}.wf-family-owa {font-family:'o365Icons'}@font-face {  font-family:'o365IconsIE8';  src:url('https://r4.res.outlook.com/owa/prem/16.0.236.13/resources/styles/office365icons.ie8.eot?#iefix') format('embedded-opentype'),         url('https://r4.res.outlook.com/owa/prem/16.0.236.13/resources/styles/office365icons.ie8.woff') format('woff'),         url('https://r4.res.outlook.com/owa/prem/16.0.236.13/resources/styles/office365icons.ie8.ttf') format('truetype');  font-weight:normal;  font-style:normal;}@font-face {  font-family:'o365IconsMouse';  src:url('https://r4.res.outlook.com/owa/prem/16.0.236.13/resources/styles/office365icons.mouse.eot?#iefix') format('embedded-opentype'),         url('https://r4.res.outlook.com/owa/prem/16.0.236.13/resources/styles/office365icons.mouse.woff') format('woff'),         url('https://r4.res.outlook.com/owa/prem/16.0.236.13/resources/styles/office365icons.mouse.ttf') format('truetype');  font-weight:normal;  font-style:normal;}.wf-family-owa {font-family:'o365IconsMouse'}.ie8 .wf-family-owa {font-family:'o365IconsIE8'}.ie8 .wf-owa-play-large:before {content:'\e254';}.notIE8 .wf-owa-play-large:before {content:'\e054';}.ie8 .wf-owa-play-large {color:#FFFFFF/*$WFWhiteColor*/;}.notIE8 .wf-owa-play-large {border-color:#FFFFFF/*$WFWhiteColor*/; width:1.4em; height:1.4em; border-width:.1em; border-style:solid; border-radius:.8em; text-align:center; box-sizing:border-box; -moz-box-sizing:border-box; padding:0.1em; color:#FFFFFF/*$WFWhiteColor*/;}.ie8 .wf-size-play-large {width:40px; height:40px; font-size:30px}.notIE8 .wf-size-play-large {width:40px; height:40px; font-size:30px}.notIE8 .wf-owa-triangle-down-small:before {content:'\e052';}.ie8 .wf-owa-triangle-down-small:before { content:'\e052';}.ie8 .wf-owa-triangle-down-small {color:#666666/*$WFGreyColor*/;}.wf-size-x20 {font-size: 20px!important;}--></style>
</head>
<body dir="ltr">
<div id="OWAFontStyleDivID" style="font-size:12pt;color:#000000;background-color:#FFFFFF;font-family:Calibri,Arial,Helvetica,sans-serif;">
<p><br>
</p>
<p>Hi Steven,</p>
<p><br>
</p>
<p>To send a list via a POST command, you need to put a [] in the parameter</p>
<p><br>
</p>
<p>http://stackoverflow.com/questions/13368316/how-to-do-a-http-post-a-list-of-value-using-curl<br>
</p>
<p><br>
</p>
<p>Like this: </p>
<p><br>
</p>
<p>curl -H "X-ArchivesSpace-Session: $TOKEN" -d "record_uris[]=/repositories/2/resources/3&record_uris[]=/repositories/2/resources/4"
<a id="lnk931328" href="http://localhost:8089/batch_delete">http://localhost:8089/batch_delete</a></p>
<p><br>
</p>
<p><br>
</p>
<p>best, chris. <br>
</p>
<div>
<p><br>
</p>
<div name="divtagdefaultwrapper" style="font-family:Calibri,Arial,Helvetica,sans-serif; font-size:; margin:0">
<div class="BodyFragment"><font size="2">
<div class="PlainText">Chris Fitzpatrick | <font size="2">Developer, ArchivesSpace</font><br>
Skype: chrisfitzpat  | Phone: 918.236.6048<br>
http://archivesspace.org/<br>
</div>
</font></div>
</div>
</div>
<div style="color: rgb(40, 40, 40);">
<hr tabindex="-1" style="display:inline-block; width:98%">
<div id="divRplyFwdMsg" dir="ltr"><font style="font-size:11pt" color="#000000" face="Calibri, sans-serif"><b>From:</b> archivesspace_users_group-bounces@lyralists.lyrasis.org <archivesspace_users_group-bounces@lyralists.lyrasis.org> on behalf of Steven Majewski
 <sdm7g@virginia.edu><br>
<b>Sent:</b> Thursday, May 29, 2014 8:50 PM<br>
<b>To:</b> Archivesspace Users Group<br>
<b>Subject:</b> Re: [Archivesspace_Users_Group] Batch delete</font>
<div> </div>
</div>
<div>
<div><br>
</div>
<div>Apparently, there is also a  /batch_delete method, but I haven’t yet managed to figure out</div>
<div>how to give it the correct record_uris parameter.  I’ve tried several different ways of encoding</div>
<div>record_uris (as a plain string, a json string, a json list of strings… ), and several different resource URIs,</div>
<div>but I always seem to get something like:</div>
<div><br>
</div>
<div>{"error":{"record_uris":["Wanted type [String] but got '/repositories/25/resources/3610/tree'"]}}</div>
<div><br>
</div>
<div><br>
</div>
<div>
<h2 style="margin:20px 0px 10px; padding:0px; position:relative; font-size:24px; border-bottom-width:1px; border-bottom-style:solid; border-bottom-color:rgb(204,204,204); font-family:Helvetica,arial,sans-serif; z-index:auto">
POST /batch_delete</h2>
<p style="margin:15px 0px; font-family:Helvetica,arial,sans-serif; font-size:14px; line-height:22px">
<strong style="">Description</strong></p>
<p style="margin:15px 0px; font-family:Helvetica,arial,sans-serif; font-size:14px; line-height:22px">
Carry out delete requests against a list of records</p>
<p style="margin:15px 0px; font-family:Helvetica,arial,sans-serif; font-size:14px; line-height:22px">
<strong style="">Parameters</strong></p>
<pre style="margin-top:15px; margin-bottom:15px; background-color:rgb(248,248,248); border:1px solid rgb(204,204,204); font-size:13px; line-height:19px; overflow:auto; padding:6px 10px"><code style="margin:0px; padding:0px; border:none; background-color:transparent">[String] record_uris -- A list of record uris
</code></pre>
<p style="margin:15px 0px; font-family:Helvetica,arial,sans-serif; font-size:14px; line-height:22px">
<strong style="">Returns</strong></p>
<pre style="margin-top:15px; margin-bottom:15px; background-color:rgb(248,248,248); border:1px solid rgb(204,204,204); font-size:13px; line-height:19px; overflow:auto; padding:6px 10px"><code style="margin:0px; padding:0px; border:none; background-color:transparent">200 -- deleted
</code></pre>
</div>
<div><code style="margin:0px; padding:0px; border:none; background-color:transparent"><br>
</code></div>
<div><code style="margin:0px; padding:0px; border:none; background-color:transparent"><br>
</code></div>
<div><br>
</div>
<div>Also: attempting to delete an empty repository from the admin interface yields the error:</div>
<div><br>
</div>
<div><span style="color:rgb(185,74,72); font-family:'Helvetica Neue',Helvetica,Arial,sans-serif; font-size:13px; line-height:20px; background-color:rgb(242,222,222)">Cannot delete - repository not empty</span></div>
<div><br>
</div>
<div>even though the admin browse  shows  no Accessions, Resources or Digital Objects in the repo,</div>
<div>and  API /repositories/:repo_id/resources?all_ids=true   returns  empty  [ ] . </div>
<div><br>
</div>
<div>However, after doing a ‘transfer repository’ to another repo, I am able to delete the first repository. </div>
<div><br>
</div>
<div><br>
</div>
<div>Since we’re still testing, we’ve had to frequently resort to just deleting all of the mysql database </div>
<div>tables and starting over fresh. </div>
<div><br>
</div>
<div><br>
</div>
<div>— Steve. </div>
<div><br>
</div>
<br>
<div>
<div>On May 28, 2014, at 11:38 AM, Bridger Dyson-Smith <<a href="mailto:bdysonsm@utk.edu">bdysonsm@utk.edu</a>> wrote:</div>
<br class="Apple-interchange-newline">
<blockquote type="cite">
<div style="font-size:15px; font-style:normal; font-variant:normal; font-weight:normal; letter-spacing:normal; line-height:normal; orphans:auto; text-align:start; text-indent:0px; text-transform:none; white-space:normal; widows:auto; word-spacing:0px">
On 05/28/2014 11:36, Steven Majewski wrote:<br>
<blockquote type="cite"><br>
On May 28, 2014, at 9:15 AM, Bridger Dyson-Smith <<a href="mailto:bdysonsm@utk.edu">bdysonsm@utk.edu</a><br>
<<a href="mailto:bdysonsm@utk.edu">mailto:bdysonsm@utk.edu</a>>> wrote:<br>
<br>
<blockquote type="cite">Hi all,<br>
<br>
Is there a batch process for deleting/backing out of an import job? Or<br>
is there some other work-around to accomplish a bulk resource removal?<br>
<br>
Thanks!<br>
<br>
</blockquote>
<br>
You can delete all of the resources in a repo thru the backend web api<br>
with something like this:<br>
<br>
<br>
REPO=<a href="http://localhost:8089">http://localhost:8089</a><br>
#<br>
REPO_ID=$1<br>
#<br>
DELETE='-X DELETE'<br>
for ID in $( curl_as_osx admin admin<br>
"$REPO/repositories/$REPO_ID/resources?all_ids=true" | tail -1 | tr<br>
'[],' ' ' )<br>
do<br>
curl_as_osx admin admin $DELETE<br>
$REPO/repositories/$REPO_ID/resources/$ID | tail -1 | json_pp<br>
done<br>
<br>
<br>
i.e. First curl gets the list of resource ids in that repo. Loop over<br>
the list and do a HTTP DELETE on each resource.<br>
<br>
If you don’t want to delete them all, there may be a way to do a finer<br>
selection thru the search API, but I haven’t figure out how to do it.<br>
Perhaps something like this  is easier to do in the jirb console.<br>
<br>
<br>
— Steve Majewski<br>
<br>
<br>
<br>
</blockquote>
Hi Steve -<br>
thanks for that snippet - it is much appreciated.<br>
<br>
Bridger<br>
_______________________________________________<br>
Archivesspace_Users_Group mailing list<br>
<a href="mailto:Archivesspace_Users_Group@lyralists.lyrasis.org">Archivesspace_Users_Group@lyralists.lyrasis.org</a><br>
<a href="http://lyralists.lyrasis.org/mailman/listinfo/archivesspace_users_group">http://lyralists.lyrasis.org/mailman/listinfo/archivesspace_users_group</a></div>
</blockquote>
</div>
<br>
</div>
</div>
</div>
</body>
</html>