Agent-readable docs index: /llms.txt. Full docs in one file: /llms-full.txt. Download /docs.zip to grep all markdown files locally.

Objects

Objects is deliberately small storage. It gives a benchmark result, operator report, or image a temporary public URL without exposing an R2 bucket, origin credentials, listing, or user-selected storage paths.
The public service lives at objects.yshubham.com. Use its manual upload page for an occasional file, or use the raw API and objects-storage skill from automation.

Contract

An object is raw bytes plus short-lived metadata. Uploads are capped at 10 MB, get a random identifier, and enter a Queue-backed screening stage. The initial 202 response returns a future public URL, a statusUrl, an expiresAt timestamp, and a private deletion capability. Objects are not listable, are never public while pending or quarantined, and are considered unavailable after their seven-day expiry window.
MethodPathPurpose
GET/healthService health, configured storage state, and limits
GET/apiHuman- and machine-readable endpoint description
POST/v1/objectsUpload raw bytes
GET/v1/objects/:id/statusPoll processing, ready, or quarantined
GET / HEAD/v1/objects/:idDownload or inspect a known object
DELETE/v1/objects/:idRemove an object with its deletion capability

Upload raw bytes

Send the bytes directly; do not use multipart form data. Only plain text, Markdown, CSV, JSON, NDJSON, PNG, JPEG, WebP, and AVIF are accepted. Archives, compressed blobs, executables, packages, HTML, SVG, and model files are rejected before a pending object is created. The Worker then verifies the bytes again in the Queue consumer before promoting an object to a public key.
curl --fail-with-body --data-binary @benchmark.json \ -H 'content-type: application/json' \ https://objects.yshubham.com/v1/objects
The 202 response contains id, url, statusUrl, bytes, expiresAt, and deleteToken. Poll statusUrl until the status is ready; only then does the public URL return a download. Persist only the fields you need; the service never offers a later listing endpoint to recover a lost token. A quarantined status means the object was never public.

Download or delete

Use the returned URL to download. A 404 can mean an unknown object or an expired object; it is expected lifecycle behavior, not a reason to retry an upload in parallel.
curl --fail --location \ https://objects.yshubham.com/v1/objects/OBJECT_ID \ -o benchmark.json curl --fail -X DELETE \ -H "authorization: Bearer $OBJECT_DELETE_TOKEN" \ https://objects.yshubham.com/v1/objects/OBJECT_ID
Upload protection fails closed. The Worker checks its edge rate-limit and Queue bindings before accepting public uploads, applies the byte limit while reading, stores the pending object outside the public prefix, and avoids logging request data or deletion capabilities on an internal error. The Queue consumer has bounded concurrency, retries transient failures, and sends exhausted messages to a dead-letter queue. Pending and quarantined prefixes expire after one day; promoted public objects expire after seven.
All downloads are forced to application/octet-stream with attachment, nosniff, no-store caching, a restrictive CSP, and same-origin resource policy. This prevents an uploaded payload from being rendered or executed by this domain even if a browser ignores its declared file type.

What it is not

Objects is not a malware scanner, backup, package registry, secret store, or durable file system. The content allowlist and download hardening mean an upload cannot execute on this domain or run inside the Worker, but they are not a claim that every safe-looking image or text file is harmless to a recipient. Do not upload credentials, personal data, private source, or anything that requires an access policy beyond possession of an unguessable public URL. Use GitHub Releases or the Forgejo mirror for software distribution.
For a repeatable automation workflow, use the agent skill. For shared public-edge defaults, read the operating model.
The delete token is a capability. Never put it in a URL, commit, issue, log line, or generated document. If it is lost, let the object expire.