Find & Transfer Datasets
This guide walks through searching the AmSC data catalog and transferring datasets to your facility storage using the AmSC Python client.
note
Code examples use Python and were tested with Python 3.14.3.
Prerequisites
- AmSC Python client installed (see Python Client Setup)
- Your AmSC Bearer Token set as
AMSC_TOKEN(see Access & Login)
Step 1: Create a Client
import os
from amsc_client import Client
AMSC_TOKEN = os.environ.get("AMSC_TOKEN", "")
catalog_client = Client(
base_url="https://api.american-science-cloud.org/api/current",
token=AMSC_TOKEN,
)
Step 2: Search for Data
results = catalog_client.catalog.search('Illinois', limit=200)
for item in results:
print(f'Name: {item.name}')
print(f'Type: {item.type}')
print(f'Location: {item.location}')
Results include two entity types:
- scientificWork — a container grouping related datasets
- artifact — a unit of data, often a file, with a
locationURL
If the location is a direct URL (e.g. https://...), you can download it directly. If it is a globus:// URI, use the Data Movement API below.
Step 3: Transfer Data via Globus
For artifacts with a globus:// location, use the transfer API:
from amsc_client.catalog.transfer import GlobusTransferInputs
inputs = GlobusTransferInputs(
source_url='globus://57618e0a-2c99-45ff-9694-24141b92fa17/path/to/data/',
destination_url='globus://9d6d994a-6d04-11e5-ba46-22000b92c6ec/pscratch/sd/<your-directory>/',
label='AmSC data transfer: my-dataset',
)
transfer = catalog_client.catalog.globus_transfer.start(inputs)
print(f"Transfer submitted: {transfer.transfer_uuid}")
Replace <your-directory> with your actual destination path on the facility.