Intro
Set the context:
- We have new APIs for content upload and management
- Not yet 100% sure what the "marketing names" for the versions are... while drafting, we'll call the new shit "v2" and the old jam "v1".
- The new APIs use a new auth system with fun new acronyms (UCAN, DIDs, etc).
- Supports new access patterns based on delegation
- v2 supports larger uploads by uploading directly to cloud storage, skipping CF worker bottleneck
Commonalities:
-
Both APIs write into Elastic IPFS
- v2 writes directly to cloud bucket, while v1 goes through an intermediate CF worker
-
Both APIs require payment (after free resources are exhausted) & have the same pricing
- Caveat: w3up is free during beta, but content stored during beta will need to be paid for eventually
Differences:
-
Auth & accounts
- v1 uses API tokens for auth, after registration via "magic link" or OAuth (GitHub).
- v2 uses UCAN tokens generated by the client - access is granted after email registration of client's DID
- once an account is registered, client can delegate to other UCAN agents
-
Upload mechanics
- v1 uploads to CloudFlare Workers, which then feed into the "storage backend"
- imposes a 100MiB max upload limit per request
- v2 uploads directly to cloud storage, using signed upload URLs provided by w3up service
- has ~ 4GB per-request limit (I think... need to double check)
- v1 uploads to CloudFlare Workers, which then feed into the "storage backend"
-
HTTP API
- v2 does not expose an HTTP API for end users yet
- Must use JS client lib or CLI
- v2 does not expose an HTTP API for end users yet