|
1 | 1 | Python scripts used to perform various tasks with the ArchivesSpace API |
2 | 2 |
|
3 | | -##Authenticating to the API |
| 3 | +## Authenticating to the API |
4 | 4 |
|
5 | 5 | All of these scripts require a secrets.py file in the same directory that must contain the following text: |
6 | 6 |
|
7 | 7 | baseURL='[ArchivesSpace API URL]' |
8 | 8 | user='[user name]' |
9 | 9 | password='[password]' |
10 | 10 |
|
11 | | -##Scripts |
| 11 | +## Scripts |
12 | 12 |
|
13 | | -####[getResources.py](/getResources.py) |
| 13 | +#### [getResources.py](/getResources.py) |
14 | 14 | This GET scripts retrieves all of the resources from a particular repository into a JSON file which is specified in variable 'f' on line 16. This GET script can be adapted to other record types by editing the 'endpoint' variable on line 13 (e.g. 'repositories/[repo ID]/accessions' or 'agents/corporate_entities'). |
15 | 15 |
|
16 | | -####[getSingleRecord.py](/getSingleRecord.py) |
| 16 | +#### [getSingleRecord.py](/getSingleRecord.py) |
17 | 17 | This GET script retrieves a single ArchivesSpace record based on the record's 'uri,' which is specified in the 'endpoint' variable on line 13. |
18 | 18 |
|
19 | | -####[postNew.py](/postNew.py) |
| 19 | +#### [postNew.py](/postNew.py) |
20 | 20 | This POST script will post new records to a generic API endpoint based the record type, 'agents/people' in this example. This script can be modified to accommodate other data types (e.g. 'repositories/[repo ID]/resources' or 'agents/corporate_entities'). It requires a properly formatted JSON file (specified where [JSON File] appears in the 'records' variable on line 13) for the particular ArchivesSpace record type you are trying to post. |
21 | 21 |
|
22 | | -####[postOverwrite.py](/postOverwrite.py) |
| 22 | +#### [postOverwrite.py](/postOverwrite.py) |
23 | 23 | This POST script will overwrite existing ArchivesSpace records based the 'uri' and can be used with any ArchivesSpace record type (e.g. resource, accession, subject, agent_people, agent_corporate_entity, archival_object, etc.). It requires a properly formatted JSON file (specified where [JSON File] appears in the 'records' variable on line 13) for the particular ArchivesSpace record type you are trying to post. |
24 | 24 |
|
25 | | -####[getPropertiesFromAgentsPeopleCSV.py](/getPropertiesFromAgentsPeopleCSV.py) |
| 25 | +#### [getPropertiesFromAgentsPeopleCSV.py](/getPropertiesFromAgentsPeopleCSV.py) |
26 | 26 | This GET script retrieves specific properties from the JSON of ArchivesSpace agent_people records into a CSV file which is specified in variable 'f' on line 17. In this example, the script retrieves the 'uri,' 'sort_name,' 'authority_id,' and 'names' properties from the JSON records by iterating through the JSON records with the function 'for i in range (...)' on line 19. The f.writerow(....) function on line 20 specifies which properties are retrieved from the JSON and the f.writerow(....) on line 18 specifies header row of the CSV file. |
27 | 27 |
|
28 | | -####[getArrayPropertiesFromAgentsPeopleCSV.py](/getArrayPropertiesFromAgentsPeopleCSV.py) |
| 28 | +#### [getArrayPropertiesFromAgentsPeopleCSV.py](/getArrayPropertiesFromAgentsPeopleCSV.py) |
29 | 29 | This GET script retrieves specific properties, including proprerties that have arrays as values, from the JSON of ArchivesSpace agent_people records. In this example, the 'dates_of existence' property contains an array that must be iterated over. This requires a second level of iteration with 'for j in range (...)' on line 20, which is in addition to the iteration function 'for i in range (...)' on line 19, which was also found in the getPropertiesFromAgentsPeopleCSV.py script. As with the previous script, it also writes the properties' values into a CSV file which is specified in variable 'f' on line 17. |
30 | 30 |
|
31 | | -####[searchArchivalObjectsByResource.py](/searchArchivalObjectsByResource.py) |
| 31 | +#### [searchArchivalObjectsByResource.py](/searchArchivalObjectsByResource.py) |
32 | 32 | A GET script to extract all of the archival objects associated with a particular resource. To set the resource you want to search for, adjust the 'resourceNumber' variable on line 13 |
0 commit comments