🍣
ArchivematicaのAPIを試す(Archivematica API編)
概要
「ArchivematicaのAPIを試す」のArchivematica APi編です。(別に、「Storage Service API」があります。)
今回は、以下の「Transfer」を試します。
使い方
以下のノートブックでお試しいただけます。
以下のような記述が必要でした。ロケーションのUUIDは、ストレージサービスから確認しました。
## サーバの設定
endpoint = "http://<ドメイン>:81/api"
username = "<ユーザ名>"
api_key = "<APIキー>"
location_uuid = "<ロケーションのUUID>"
## Transferの設定
name = "mc_api_transfer"
type = "standard"
accession = "2023-1234"
paths = ["files/movie_test"]
row_ids = [""]
## base64へエンコード
import base64
paths_encoded = []
for path in paths:
path_encoded = base64.b64encode(f"{location_uuid}:{path}".encode()).decode()
paths_encoded.append(path_encoded)
## POST
import requests
data = {
"name": name,
"type": type,
"accession": accession,
"paths[]": paths_encoded,
"row_ids[]": row_ids
}
headers = {'Authorization': f'ApiKey {username}:{api_key}'}
response = requests.post(f'{endpoint}/transfer/start_transfer/', headers=headers, data=data)
まとめ
今回はStart transferのみを試しましたが、各操作に対するAPIが提供されており、色々なシステム連携ができそうでした。
Discussion