Download with the API
Use API downloads for automation and large-scale workflows.
Typical Sequence
- Confirm availability.
- Estimate processing-unit cost.
- Request composite/tile/minitile output.
- Choose a delivery mode: store response bytes, use
UploadUrl, or use Business-managed S3 pushing if your account has that setup.
Delivery Modes
ClearSKY supports three distinct ways to deliver downloadable imagery. Two are available in standard API workflows. Business-managed S3 pushing is a separate plan-level delivery feature that requires ClearSKY setup with your S3-compatible storage.
| Mode | Who controls the destination | How delivery works | Available to | Typical use cases |
|---|---|---|---|---|
| Direct byte download | Your client | ClearSKY returns the file as a binary response, and your client stores it locally or forwards it to your own storage. | All API users | Custom pipelines, scripts, and integrations where you want full control of the file handling. |
UploadUrl | Your request payload | You provide a writable upload target, and ClearSKY sends the file there instead of returning bytes to the client. | All users on supported download endpoints | Server-side handoff into a signed URL, bucket, or internal object store. |
| Business-managed S3 pushing | ClearSKY after setup with your credentials | ClearSKY pushes imagery directly to customer-owned S3-compatible storage that was configured through Business onboarding/support. | Business customers with this feature enabled | Production workflows that need automatic delivery without client-side download handling. |
Direct Byte Download
Use direct byte download when your application can receive the response body and decide where to store it.
- Call the download endpoint.
- Stream the response bytes to disk, object storage, or another internal destination.
- Handle retries/backoff and attribution in your own pipeline.
UploadUrl
Use UploadUrl when you want ClearSKY to write the file to a destination you already control.
- Create or obtain a writable upload target.
- Pass that target as
UploadUrlin the download request. - ClearSKY uploads the file directly to that URL.
UploadUrl still requires customer orchestrationUploadUrl changes where the file is delivered, but you still need to check availability, send the download request, and manage the workflow yourself. Business-managed S3 pushing is different: it is a setup where ClearSKY pushes imagery into your S3-compatible storage after coordination with support.
Business-Managed S3 Pushing
Use Business-managed S3 pushing when you want ClearSKY to deliver imagery automatically into your own S3-compatible storage without client-side download handling.
- Contact ClearSKY to enable the Business delivery workflow.
- Share the S3-compatible storage credentials and destination details your organization controls.
- ClearSKY pushes the imagery directly to that storage after processing.
- Your downstream systems pick up the files from your bucket without needing to poll for binary downloads.
Choosing an Endpoint Type
POST /api/satelliteimages/process/compositeis the default for most download workflows.- You can use the composite endpoint even when the original order was tile/minitile-based.
POST /api/satelliteimages/process/tileandPOST /api/satelliteimages/process/minitileare typically used for very large, grid-based retrieval and finer control near UTM transition zones.- Composite downloads use geometry inputs; tile/minitile requests use GUID-based inputs.
Example Flow (Composite)
- Call
POST /api/satelliteimages/process/composite/availablewith your AOI/date/model inputs. - Call
POST /api/satelliteimages/process/composite/estimateusing the same payload shape. - Validate estimate output (processing units, runtime, size) against your workflow budget.
- Call
POST /api/satelliteimages/process/compositewith the approved payload. - Save direct response bytes, or provide
UploadUrlfor server-side delivery.
Minimal composite request body (Wkt mode):
{
"Wkt": "POLYGON ((9.877893206725581 56.47856668238974, 10.196496722350581 56.47856668238974, 10.196496722350581 56.27782087776097, 9.877893206725581 56.27782087776097, 9.877893206725581 56.47856668238974))",
"Date": "2024-05-03T00:00:00Z",
"Resolution": 10,
"EpsgProjection": 32632,
"Model": "Stratus2",
"SatelliteConstellations": ["Sentinel1", "Sentinel2", "Landsat89"],
"Bandnames": "all"
}
Use one geometry mode per request: send Wkt or GeoJson, not both.
Main Endpoints
POST /api/satelliteimages/process/composite/availablePOST /api/satelliteimages/process/composite/estimatePOST /api/satelliteimages/process/compositePOST /api/satelliteimages/process/tilePOST /api/satelliteimages/process/minitile
Implementation Notes
- Keep estimate and download payloads aligned to avoid budget mismatches.
- Handle rate limits and transient failures with retry/backoff (
429,5xx). - Prefer
UploadUrlfor async pipelines that should not hold large binary responses in memory. - Use Business-managed S3 pushing only when your account has been set up for that plan-level delivery mode.
For full request/response definitions, see Processing / download endpoints.
For attribution implementation guidance, see Source attribution and external use.