Saltar al contenido principal
POST
Copiar o mover un objeto blob
Copia un objeto blob a una nueva path dentro de la misma cuenta, o lo mueve cuando move es true. Un movimiento conserva el id del objeto y cambia solo path, así que no suma al almacenamiento. Una copia crea un objeto nuevo con un id nuevo, y sus bytes cuentan para la cuota. Ámbito: blob:write.
string
requerido
ID del objeto que se va a copiar o mover.
string
requerido
Ruta de destino, con las mismas reglas que Subir un objeto en una sola petición.
boolean
true mueve el objeto y conserva su ID. Por defecto false: copia.
boolean
Reemplaza un objeto que ya esté en path. Por defecto false.
boolean
Inserta un sufijo aleatorio antes de la extensión. Por defecto false.
boolean
Solo en copia: cuando path está ocupada, incluso por el propio origen, guarda la copia como nombre-1.ext, nombre-2.ext y así sucesivamente, en lugar de devolver BLOB_OBJECT_ALREADY_EXISTS. Por defecto false. No se puede combinar con overwrite, y se ignora en un movimiento.
string
public o private para el objeto nuevo. Por defecto: la visibilidad del objeto de origen.
string
El ID del workspace, cuando el blob pertenece a un workspace. La petición actúa sobre el blob del propietario del workspace y necesita el permiso blob:read del workspace (blob:manage en las rutas que modifican datos). Omítelo para actuar sobre tu propio blob.

Ejemplo de petición

Respuesta

object
El objeto en su nueva ruta.

Respuestas de error

string
El código de error que indica el motivo del fallo. Valores posibles:
  • AUTH_TOKEN_MISSING (401): No se envió la cabecera Authorization.
  • API_KEY_INVALID (401): La clave de API no existe, fue revocada o su secreto no coincide.
  • API_KEY_SCOPE_DENIED (403): La clave no tiene el ámbito que necesita esta ruta (blob:read o blob:write); details.required lo indica.
  • WORKSPACE_PERMISSION_DENIED (403): Solo con workspace_id: no eres miembro, o tu rol no tiene el permiso de blob.
  • WORKSPACE_NOT_FOUND (404): Solo con workspace_id: no existe un workspace con ese ID, o no eres miembro.
  • BLOB_NAMESPACE_SUSPENDED (403): El almacenamiento de blob de la cuenta está suspendido, o su plan expiró. Las subidas y otras escrituras se rechazan desde el inicio del periodo de gracia de 72 horas.
  • VALIDATION_ERROR (400): Un parámetro o un campo del cuerpo no superó la validación. details.path indica el campo.
  • BLOB_OBJECT_NOT_FOUND (404): El source no existe en esta cuenta.
  • BLOB_OBJECT_ALREADY_EXISTS (409): path está ocupada y overwrite no es true.
  • STORAGE_QUOTA_EXCEEDED (403): Una copia superaría la cuota de blob del plan. Los movimientos no suman almacenamiento, así que este límite no los bloquea.
  • BLOCKED_FILE_TYPE (422): La extensión de destino está bloqueada o no la permite la regla de carpeta.
Última modificación el 28 de octubre de 2026