Esta página documenta
@squarecloud/blob v4. ¿Actualizas desde la v3? Lee la guía de migración v3 → v4.@squarecloud/blob es el SDK oficial de JavaScript para Square Cloud Blob Storage. Cubre todos los endpoints de la API de Blob, además del gateway S3.
Requisitos
- Node.js 20 o más reciente, o cualquier navegador moderno. El SDK solo usa
fetch,FormDatayBlob. - Se distribuye como ESM y CommonJS, sin dependencias en tiempo de ejecución.
@aws-sdk/client-s3es una peer dependency opcional, solo necesaria si llamas as3().
Instalación
- npm
- yarn
- pnpm
- bun
Crear el cliente
Los ejemplos leen la clave de la variable de entornoSQUARECLOUD_API_KEY. Defínela en la terminal donde los ejecutes:
- macOS / Linux
- Windows (PowerShell)
- ESM / TypeScript
- CommonJS
stats() lee tu uso:
Constructor
Credenciales
La credencial se envía tal cual en el encabezadoAuthorization, sin el prefijo Bearer.
Lo que no puedes configurar
maxRetries es la única opción. El cliente no acepta:
- Una URL base. Está fijada en
https://blob.squarecloud.app/v1/. - Un
fetchpersonalizado. Las peticiones usan elfetchglobal. - Un timeout ni un
AbortSignal. Una llamada dura lo que esperefetch, y no hay forma de cancelarla. - Encabezados personalizados.
Métodos
Todos los métodos devuelven datos planos (sin clases), salvos3(), que devuelve un S3Client. Las opciones y los resultados usan los nombres de campo de la propia API, casi siempre en snake_case (security_hash, expires_at), así que la referencia de la API de Blob se aplica tal cual.
El paquete también exporta
SquareCloudBlobError, el tipo BlobErrorCode y todos los tipos de opciones y resultados (PutOptions, PutResult, ListedObject, ObjectInfo, Share, Rule, …). Consulta Errores.
IDs de objeto
Cada objeto se identifica con un id opaco, comopub/... para un objeto público o prv/... para uno privado.
- Guarda el id exactamente como se devuelve. Nunca construyas uno a mano ni lo analices.
- Cambiar
privateoexpirecambia el id. Reemplaza siempre el id que tengas guardado por el que devuelveupdate(). - Usa la
urlde la respuesta en lugar de construir URLs. Los objetos privados tienenurl: null: obtén un enlace condownloadUrl()o con un enlace compartido.
Próximos pasos
Subidas
Sube archivos y genera tokens de subida.
Inicio rápido de la API de Blob
URL base y una primera subida con curl.
Planes de Blob Storage
Lo que incluye cada plan.

