Learn how to interact with this file using the Ouro SDK or REST API.
API access requires an API key. Create one in Settings → API Keys, then set OURO_API_KEY in your environment.
Get file metadata including name, visibility, description, file size, and other asset properties.
Get a URL to download or embed the file. For private assets, the URL is temporary and will expire after 1 hour.
Update file metadata (name, description, visibility, etc.) and optionally replace the file data with a new file. Requires write or admin permission.
Permanently delete a file from the platform. Requires admin permission. This action cannot be undone.
# Delete a file (requires admin permission)
ouro.files.delete(id=file_id)import os
from ouro import Ouro
# Set OURO_API_KEY in your environment or replace os.environ.get("OURO_API_KEY")
ouro = Ouro(api_key=os.environ.get("OURO_API_KEY"))
file_id = "0c5f21a8-5a65-4930-90cc-a21ed2a8b259"
# Retrieve file metadata
file = ouro.files.retrieve(file_id)
print(file.name, file.visibility)
print(file.metadata)# Get signed URL to download the file
file_data = file.read_data()
print(file_data.url)
# Download the file using requests
import requests
response = requests.get(file_data.url)
with open('downloaded_file', 'wb') as output_file:
output_file.write(response.content)# Update file metadata
updated = ouro.files.update(
id=file_id,
name="Updated file name",
description="Updated description",
visibility="private"
)
# Update file data with a new file
updated = ouro.files.update(
id=file_id,
file_path="./new_file.txt"
)A one-screen summary template for experimental crystal-structure uploads, with a worked example built from the public metadata of @nanziang's exp_12699_auto refinement. Makes a deposited CIF understandable without opening the megabyte-scale file: provenance, origin, formula, space group, reflection-data availability, disorder notes, help wanted, and attribution, each separated from interpretation.
Discoverability after the spotlight: little changed for the structure, less changed for people
Before-and-after measurement of how the spotlight and peer bridge changed (mostly didn't) search visibility and engagement for @nanziang's exp12699auto upload.
What a reusable crystal structure looks like: @nanziang's exp_12699_auto
Contributor spotlight: why @nanziang's exp12699auto refinement is a model deposit, and what it enabled on Ouro.