Archivos
Accede y prueba las API en versión beta.
Esta API está actualmente en versión beta. Para la última verificación de versiones estables de estas páginas:Cargar un nuevo archivo, Enumerar metadatos de todos los archivos, Cargar un archivo de reemplazo, Marcar un archivo como eliminado, Obtener metadatos de archivo, Archivar un archivo, Eliminar permanentemente un archivo y elementos relacionados, Actualizar el acceso de un grupo de archivos, Comprobar el estado de una tarea de actualización de acceso de archivo, Obtener una URL firmada para un archivo privado, Mover un archivo, Crear una carpeta, Enumerar metadatos de carpetas, Eliminar una carpeta, Obtener la carpeta por ID,
Usa la herramienta de archivos de HubSpot para administrar y almacenar archivos en HubSpot. Los archivos alojados en HubSpot se pueden cargar y usar tanto en HubSpot como en contenido externo. También pueden adjuntarse a los registros con la API de interacciones.
Si tu empresa está creando su sitio web usando CMS Hub, puedes usar la API de archivos para cargar y almacenar materiales en HubSpot, y luego hacerlo mediante el CMS Hub.
Puedes acceder a la herramienta archivos desde HubSpot o usando la API de archivos. A continuación, aprende sobre los archivos API y cómo cargar y eliminar archivos. Para ver una lista completa de puntos e terminación de API de archivos, haz clic en la pestaña Puntos de terminación arriba.
Si usas la versión anterior de esta API, v3 tiene los siguientes cambios:
- Todos los archivos cargados a través de la API serán visibles en el panel de archivos y el selector de archivos. No se pueden crear archivos ocultos. Sin embargo, se pueden crear archivos privados y archivos no indexables.
- Enumerar archivos no devolverá los archivos ocultos o eliminados. Sin embargo, se puede aplicar un rango mucho más amplio de filtros. Los archivos ocultos aún se pueden recuperar por ID, pero requieren un nuevo alcance:
files_ui_hidden.read.
- No se pueden cargar varios archivos con una sola solicitud.
- Las acciones de actualización de carpeta como mover y cambiar el nombre son ahora asíncronas. Cada solicitud devolverá un token que se puede usar para comprobar el estado de la edición de la carpeta.
- Los puntos finales que crean o reemplazan archivos requieren que proporciones niveles de acceso para los archivos. Estos niveles de acceso son:
PUBLIC_INDEXABLE
: el archivo es accesible públicamente por cualquiera que tenga la URL. Los motores de búsqueda pueden indexar el archivo.PUBLIC_NOT_INDEXABLE
: el archivo es accesible públicamente por cualquiera que tenga la URL. Las X-Robots-Tag: el encabezado noindex se enviará cada vez que se recupere el archivo, indicando a los motores de búsqueda que no indexen el archivo.PRIVATE
:
el archivo no es accesible públicamente. Requiere una URL firmada para mostrar el contenido. Los motores de búsqueda no pueden indexar el archivo.
- Los puntos finales que crean archivos permiten un nivel de detecciones duplicadas como parte de las opciones de carga del archivo.
ENTIRE_PORTAL
: busca un archivo duplicado en la cuenta.EXACT_FOLDER
: busca un archivo duplicado en la carpeta proporcionada.
NONE
: no ejecutes ninguna validación duplicada.REJECT
: rechaza la carga si se encuentra un duplicado.RETURN_EXISTING
: si se encuentra un archivo duplicado, no cargues un nuevo archivo y, en su lugar, devuelve el duplicado encontrado.- La detección duplicada funciona en
duplicateValidationScope
, que afecta cómo buscamos un duplicado. - Esto también requiere una
duplicateValidationStrategy
, lo que determina qué sucede si se encuentra un duplicado.
Los archivos se pueden cargar usando una solicitud multipart/form-data POST
para files/v3/files
con los siguientes campos. Si bien un ID de carpeta específico no es obligatorio en la carga, se recomienda cargar archivos en una carpeta y no en el directorio raíz. Los requisitos de carpeta en la carga están sujetos a cambios en el futuro.
Campo | Requerido | Description | Example |
---|---|---|---|
file
| Yes | El archivo para cargar. |
"file": {binary data}
|
options
| Yes | Las opciones de carga de archivos. El único campo obligatorio es el campo Si estás usando el campo
|
"options": "{
"access": "PRIVATE",
"ttl": "P2W",
"overwrite": false,
"duplicateValidationStrategy": "NONE",
"duplicateValidationScope":
"EXACT_FOLDER"
}"
|
folderId
| No | El ID de la carpeta en que se cargará al archivo. |
"folderId": 1234
|
folderPath
| No | La ruta de la carpeta en que se cargará al archivo. |
"folderPath": "/folder"
|
fileName
| No | El nombre del archivo. Si no se especifica ningún nombre, se generará un nombre a partir del contenido del archivo. |
"fileName": "myImage"
|
charsetHunch
| No | Codificación de conjunto de caracteres para el archivo cargado. Si no se proporciona, se obtendrá del archivo. |
"charsetHunch": "UTF-8"
|
Para eliminar un archivo, haz una solicitud DELETE
a files/v3/files/{fileId}
. Esto marcará el archivo como eliminado y hará que el contenido del archivo sea accesible.
Para eliminar permanentemente un archivo, haz una solicitud DELETE
a files/v3/files/{fileId}/gdpr-delete
. Esto eliminará permanentemente el contenido y los metadatos del archivo en 7 días.
Si no se elimina el RGPD, su contenido permanecerá en los servidores de HubSpot en un estado privado donde nadie puede acceder a él. Para garantizar que el contenido del archivo se elimine completamente, usa la funcionalidad de eliminación de RGPD.
Para ver los detalles de un archivo que se ha cargado en la herramienta de archivos, realiza una solicitud GET
a files/v3/files/{fileId}
. Esto devolverá el archivo con detalles como nombre, alto y ancho, codificación, URL y más.
Si un archivo está establecido como privado, la URL devuelta ocasionará un error 404. Para obtener una URL visible del archivo, puedes hacer una solicitud GET
a /files/v3/files/{fileId}/signed-url
. Al realizar esta solicitud, puedes incluir parámetros de propiedad
para devolver propiedades específicas como alto y ancho.
Campo | Requerido | Description | Example |
---|---|---|---|
name
| Yes | Nombre de la carpeta que deseas crear. |
"name": "myFolder"
|
parentFolderId
| No | Para crear la carpeta dentro de una carpeta existente, incluye este campo con el ID de la carpeta existente. |
"parentFolderId": 1234
|
parentFolderPath
| No | Para crear la carpeta dentro de una carpeta existente, incluye este campo con la ruta de la carpeta existente. |
"folderId": 1234
|
Solicitud de ejemplo
//example request
{
"name": "myNewFolder",
"parentFolderId": 12345
}
Gracias por tus comentarios, son muy importantes para nosotros.