curl and jq with a token in NEBYOULOUS_TOKEN (see
Authentication). Every request and response
shape is in the endpoint reference.
Upload frames
Files never pass through the API. You ask for presigned URLs, upload straight to storage, then tell the API the uploads finished.1
Create an integration set
2
Presign the uploads
Send up to 500 files per call. Each result has
relativePath is where the file lands in
the set, and clientId is any string you use to match results to files.ok, plus assetId and uploadUrl on success or error
on failure. One bad item doesn’t fail the batch. On Linux, use
stat -c%s instead of stat -f%z.3
Upload to storage
PUT the file to uploadUrl with the same Content-Type you presigned.
The URL expires after an hour.4
Mark the uploads complete
PRESIGNED to UPLOADED. Until then it
doesn’t show up in the set.Stack and download the master
1
Get a recommended config
The API looks at the set’s frames and proposes frame groups (Edit
light,
dark, flat, bias, darkflat) and a staged stacking config.recommend.json if you want different frames or settings.2
Submit the stack
Only The response is
groups is required. The API fills in and clamps any config you
leave out.202 with the job in PENDING.3
Poll until it finishes
PENDING and RUNNING to READY, FAILED, or
CANCELLED. On FAILED, job.errorMessage says why.4
Download the master
When the job is
READY, job.downloadUrl is a presigned link to the
master FITS./analyses), frame QA (/frame-qa), and exports
(/export-jobs) follow the same pattern: submit, poll the job, then read the
result. See Stacking and analysis and Exports in the sidebar.