Turbo Offchain Upload Service

Learn about the ARIO's Turbo-compliant offchain upload service

About

The loaded-turbo-apiarrow-up-right is the first Turboarrow-up-right-compliant, offchain, s3-based, on HyperBEAM upload service. With this new upload service, Turbo and the broader Arweave ecosystem users can start using Load S3 temporary storage directly via the official Turbo SDK: a simple -one line- endpoint change.

Thanks to the Turbo SDK’s clear open standards, it was possible to develop a layer on top Load S3 that acts as a upload service that inherits the storage features of Load S3, while maintaining interoperability and integrity with Arweave’s ANS-104 data standard. Load’s upload service inherits the SLAarrow-up-right offered by the Load S3 client.

circle-exclamation

Compatibility

Endpoint
Status

GET / GET /info

GET /bundler_metrics

✅ (placeholder)

GET /health

GET /v1/tx/{dataitem_id}/offsets

✅ (placeholder)

POST /v1/tx/{token} (<= 10MB uploads)

GET /v1/tx/{dataitem_id}/status

GET /v1/chunks/{token}/-1/-1

GET /v1/chunks/{token}/{upload_id}/-1

GET /v1/chunks/{token}/{upload_id}/status

POST /v1/chunks/{token}/{upload_id}/{offset}

POST /v1/chunks/{token}/{upload_id}/finalize

GET /account/balance/:id

not supported, deprecatedarrow-up-right in turbo-upload-service

GET /price/:token/:byteCount?

not supported, deprecated in turbo-upload-service

Service Limits & Specs

The offchain LS3-powered ANS-104 upload service match the services standards set by the Turbo service, such as:

  • 4GB dataitem max size

  • return service-signed receipts

  • match the multipart upload biz logic, including chunking strategy (min/max/default chunk size)

  • it does not bundle dataitems as they are stored on LS3, it leaves the bundling logic for the onchain upload service that requires onchain fees fine tuning (e.g. Turbo)

  • comes along fast finality indexes & data caches, a LS3 dataitem streaming gateway powered by HyperBEAM: https://gateway.s3-node-1.load.networkarrow-up-right

  • service AR address: 2BBwe2pSXn_Tp-q_mHry0Obp88dc7L-eDIWx0_BUfD0

  • offchain -> onchain dataitems anchoring is supported via the load-s3-agentarrow-up-right

Endpoints:

Examples

Small uploads (<= 10 MB)

Example offchain uploaded DataItem fast indexer access: https://gateway.s3-node-1.load.network/resolve/Y11-TiVivfQpcg7eDV8ouxJfQl2UHvFFPgs-NJ_HC2karrow-up-right

Large multipart resumable uploads

Example signed receipt: https://loaded-turbo-api.load.network/v1/chunks/arweave/541a7043-6706-47e3-be73-907bffb17a80/statusarrow-up-right

Check out the upload service v1.0.0 release herearrow-up-right

Uploading data using AWS S3 SDK / Load Agent vs Turbo SDK

This Turbo-compliant upload service, along the load-s3-agent, form the main 2 data objects ingress as ANS-104 DataItems.

The main difference between load-s3-agent and Turbo-SDK is access control. Uploading data via Turbo SDK default to the offchain-dataitems data protocol where all uploaded data items sit in the protocol’s public bucket, while using the load s3 agent, it’s possible to upload object -dataitems- to private bucketsarrow-up-right and control the access and have expireable shareable download links.

However in both cases, the outcome is equal: ANS-104 formatted S3 objects along its data provenance guarantees and Arweave alignment.

Last updated