Upload through software or AI
Submit reaction records from lab systems, scripts or an AI assistant to iSynth. Choose who performs the upload; either method saves a draft in your account.
For a one-off table upload, use the website upload form.
From reaction JSON to upload: a complete exampleUploading from an automated laboratory
After results are collected, your lab information system, instrument software or script exports the reaction records and calls the upload API. This suits repeatable workflows and scheduled submissions using ordinary code.
- 01
Export records
Prepare a CSV and dataset metadata, preserving experiment IDs and reported amounts.
- 02
Call the upload API
Transfer the file and save the returned draft link and upload ID.
- 03
Review and submit
Check imported records, authors, sources and license before submitting for review.
Start with the Python uploader
Download the script and metadata example, then replace the example sources, authors and column mappings. The script reads the complete CSV and handles row counts, checksums and transfer using the Python standard library.
Configure the upload credential as described below, then run:
python upload_csv.py complete-source.csv instrument-intake.json
Upload credentials and data format
Create API keyBoth methods use an iSynth API key tied to your account, with uploads:write for uploads. They share the same data, authorship and review requirements.
Credential setup for scripts
export ISYNTH_BASE_URL='https://your-isynth-host' read -rs -p 'iSynth API key: ' ISYNTH_AUTOMATION_TOKEN export ISYNTH_AUTOMATION_TOKEN curl --fail-with-body "$ISYNTH_BASE_URL/api/automation/v1/me" \ -H "Authorization: Bearer $ISYNTH_AUTOMATION_TOKEN"
Bash example with hidden secret input. The identity endpoint confirms which account will own the data.
After uploading
The receipt links to a draft. Review imported records and dataset metadata before submitting for review, or add further files to the same dataset.
Upload receipts include a citation preview for the current version. Cite a published version in publications; dataset DOI registration is not yet connected.
Upload multiple files to one dataset
- Upload the first file with dataset and author information to receive a draft ID.
- Add the remaining files to the same draft version, preserving each original filename.
- After every file is uploaded and processed, review and submit the dataset together.
Continue an interrupted upload
Resume the original upload; received content is not added again. If a file was uploaded but processing failed, retry processing that file.
Publication follows approval. Use the draft page to review files, edit descriptions and check status.
Developer call reference
Use get_dataset_citation for citations and /api/citation/contract for the future DOI provider metadata contract. Source-paper DOIs and dataset DOIs are separate identifiers.
Call start_upload for each file. From the second file onward, pass dataset_id and version_num from the first receipt and omit dataset and authors. Use a separate source_record_id per file and keep it unchanged on retries.
start_upload → upload_batch (batch_index: 0, 1, …) → finish_upload get_parse_report → submit_dataset_for_review → get_dataset_status
Send row batches through MCP, or upload the complete CSV with HTTP PUT to the URL returned by start_upload. All batches of a file share one upload_id; get_upload reports progress. Use retry_file_processing for processing failures and respect Retry-After on 429 responses.