[Archivesspace_Users_Group] help with API route for archival object notes

James Bullen james at hudmol.com
Tue Jun 30 19:35:05 EDT 2020


Hi Karen,

The general rule is that anything you can GET from a uri can be modified and POSTed back to update it.

So, GET the JSON for the archival_object as you are doing. Then modify the JSON (in this case the notes bit of it) to look how you want. Then POST it back to the same uri.

Notes are nested subrecords (as are dates and others). These don’t have a life of their own, they are really just repeating parts of the top level record that they are contained within.

Hope that helps..


Cheers,
James


> On Jul 1, 2020, at 8:22 AM, Karen Miller <k-miller3 at northwestern.edu> wrote:
> 
> Good morning, ArchivesSpace users.
>  
> I am a cataloger (*not* a developer) using the API to update ArchivesSpace. So far I’ve figured out how to add LCCNs to the authority_Id of Agent records and do a couple more updates that, in retrospect, were pretty simple. 
>  
> The next task I’d like to tackle, however, just seems like maybe it can’t be done. We’ve got a lot of notes with html tags in them and I would like to update those to valid tags. I can get the JSON for the notes in any particular archival object, but I don’t know how to specify the route to the note to change it. The JSON looks like this:
>  
> 'notes': [{'content': ['This is a note with a bad <i>tag</i>'],
>             'jsonmodel_type': 'note_singlepart',
>             'persistent_id': '75ba0ec57e374b8b154551a69b4c311f',
>             'publish': True,
>             'type': 'abstract'},
>            {'jsonmodel_type': 'note_multipart',
>             'persistent_id': '66afa07b3214260078123236bbe1ff27',
>             'publish': True,
>             'subnotes': [{'content': 'This is a dippy note.',
>                           'jsonmodel_type': 'note_text',
>                           'publish': True}],
>             'type': 'scopecontent'}],
>  
> I got this using the route ‘repositories/10/archival_objects/489763’, but I don’t know how to specify the note that I want in the JSON. For the agent authority_id I used the route ‘‘/agents/people/<somenumber> and specified the field like this:
>  
> ['names'][0]['authority_id']
>  
> I’m hoping this is an easy question for somebody with more experience with the API and (especially) with JSON than I. I’m a little afraid the answer is that it can’t be done. Any advice will be appreciated! 
>  
> Karen
>  
> Karen D. Miller
> Monographic Cataloger/Metadata Specialist
> Northwestern University Libraries
> Northwestern University
> 1970 Campus Drive
> Evanston, IL 60208
> www.library.northwestern.edu <http://www.library.northwestern.edu/>
> k-miller3 at northwestern.edu <mailto:k-miller3 at northwestern.edu>
> 874.467.3462
>  
> _______________________________________________
> Archivesspace_Users_Group mailing list
> Archivesspace_Users_Group at lyralists.lyrasis.org <mailto:Archivesspace_Users_Group at lyralists.lyrasis.org>
> http://lyralists.lyrasis.org/mailman/listinfo/archivesspace_users_group <http://lyralists.lyrasis.org/mailman/listinfo/archivesspace_users_group>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lyralists.lyrasis.org/pipermail/archivesspace_users_group/attachments/20200701/284f705b/attachment.html>


More information about the Archivesspace_Users_Group mailing list