Gerenciador de arquivos

Use a ferramenta de arquivos da HubSpot para gerenciar e armazenar arquivos no HubSpot. Os arquivos hospedados na HubSpot podem ser carregados e usados no HubSpot e no conteúdo externo. Eles também podem ser anexados a registros usando a API de envolvimentos.

Se sua empresa estiver criando um site usando o HubSpot CMS, você poderá usar a API de arquivos para fazer upload e armazenar os ativos no HubSpot. Esses arquivos poderão ser veiculados e compartilhados por meio do HubSpot CMS.

Você pode acessar a ferramenta de arquivos no HubSpot ou por meio da API de arquivos. Veja abaixo sobre os arquivos de API e como carregar e excluir arquivos. Para obter uma lista completa de endpoints da API de arquivos, clique na guia Endpoints acima.

Upload de um arquivo

O upload dos arquivos pode ser feita usando uma solicitação POST multipart/form-data para files/v3/files com os seguintes campos. Embora um ID de pasta específico não seja necessário para upload, recomendamos fazer upload dos arquivos em uma pasta e não no diretório raiz. Os requisitos da pasta para upload estão sujeitos a alterações futuras. 

Use this table to describe parameters / fields
CampoDescription
file

O arquivo para upload (obrigatório).

options

Um objeto JSON que controla a privacidade e a indexabilidade do arquivo e contém dois campos: access, que é obrigatório, e ttl, que especifica um período de tempo após o qual o arquivo será excluído automaticamente.

Se estiver usando o campo ttl:

  • O período mínimo que deve ser definido é de um (1) dia.
  • O período máximo que pode ser definido é de um (1) ano.
  • Após o período definido, o arquivo será excluído permanentemente. Após a exclusão, o arquivo não poderá ser recuperado ou restaurado.

folderId

O ID da pasta para a qual o arquivo será carregado. Este campo ou folderPath deve ser fornecido na sua solicitação (mas não ambos).

folderPath

O caminho da pasta para a qual o arquivo será carregado. Este campo ou folderId deve ser fornecido na sua solicitação (mas não ambos).

fileName

O nome do arquivo. Se nenhum nome for especificado, um nome será gerado do conteúdo do arquivo.

charsetHunch

Rótulo do conjunto de caracteres do arquivo de upload. Se não for fornecido, ele será derivada do arquivo.

Por exemplo, se você quiser enviar um arquivo com os seguintes critérios para sua conta da HubSpot:

  • Nome do arquivo: cat.png
  • Pasta de destino no gerenciador de arquivos do HubSpot: /library/cat_archive
  • Acessibilidade dos arquivos no HubSpot: acesso privado

Os seguintes cabeçalhos e corpo da solicitação precisariam fazer parte da sua solicitação:

curl --request POST \ --url https://api.hubapi.com/files/v3/files?=' \ --header 'Authorization: Bearer pat-na1-00000000-0000-0000-0000-000000000000' \ --header 'Content-type: multipart/form-data' \ --form file=@/Users/person/Downloads/cat.png \ --form 'options={"access": "PRIVATE"}' \ --form folderPath=/library/cat_archive
A resposta resultante incluirá o id e o parentFolderId do arquivo carregado, que você poderá usar para recuperar o arquivo por meio de uma solicitação GET.
// 201 Response from successful file upload { "id": "122692044085", "createdAt": "2023-06-28T17:56:45.393Z", "updatedAt": "2023-06-28T17:56:45.393Z", "archived": false, "parentFolderId": "122692510820", "name": "cat", "path": "/library/cat_archive/cat.png", "size": 24574, "height": 219, "width": 225, "encoding": "png", "type": "IMG", "extension": "png", "defaultHostingUrl": "https://12345.fs1.hubspotusercontent-na1.net/hubfs/12345/library/cat_archive/cat.png", "url": "https://12345.fs1.hubspotusercontent-na1.net/hubfs/12345/library/cat_archive/cat.png", "isUsableInContent": true, "access": "PRIVATE" }

Verificar o estado de carregamento de um arquivo

Ao importar um arquivo de um URL para o gerenciador de arquivos enviando uma solicitação POST para files/v3/files/import-from-url/async, você poderá revisar o status de carregamento do arquivo.

Para fazer isso, envie uma solicitação GET para files/v3/files/import-from-url/async/tasks/{taskId}/status.

Depois de fazer esta solicitação, você receberá uma das seguintes respostas:  

  • PENDING: o arquivo está na fila para ser carregado. O processo de importação ainda não foi iniciado. 
  • PROCESSING: o arquivo está em processo de carregamento.
  • CANCELED: o carregamento foi cancelado e o arquivo não será carregado. Para importar o arquivo na sua conta da HubSpot, você precisará carregar o arquivo novamente.  
  • COMPLETE: o arquivo foi carregado para a ferramenta de arquivos com sucesso. O arquivo carregado aparecerá na ferramenta de arquivos.  

Exibir detalhes do arquivo

Para revisar os detalhes de um arquivo que foi enviado por upload para a ferramenta de arquivos, envie uma solicitação GET para files/v3/files/{fileId}. Isso retornará o arquivo com detalhes, como nome, altura e largura, codificação, URL e muito mais.

Por exemplo, para recuperar os detalhes de um arquivo:  

Se um arquivo for definido como privado, o URL retornado resultará em um erro 404. Para obter uma URL visível do arquivo, você pode fazer uma solicitação GET para /files/v3/files/{fileId}/signed-url. Ao fazer essa solicitação, você pode incluir parâmetros property para retornar propriedades específicas, como altura e largura.

Excluir um arquivo

Para excluir um arquivo, faça uma solicitação DELETE para files/v3/files/{fileId}. Isso marcará o arquivo como excluído e tornará o conteúdo do arquivo inacessível.

Para excluir permanentemente um arquivo, faça uma solicitação DELETE para files/v3/files/{fileId}/gdpr-delete. Isso excluirá permanentemente o conteúdo e os metadados do arquivo em até 7 dias. 

Se um arquivo não for excluído de acordo com o GDPR, o conteúdo dele permanecerá nos servidores do HubSpot em um estado privado onde ninguém poderá acessá-lo. Para garantir que o conteúdo do arquivo seja totalmente excluído, use a funcionalidade de exclusão do GDPR. 

Criar uma pasta

Para criar uma pasta, faça uma solicitação POST para files/v3/folders. Ao fazer a solicitação, você pode incluir os campos abaixo. 

Use this table to describe parameters / fields
CampoObrigatórioDescription
name
Yes

Nome da pasta que você deseja criar.

parentFolderId
No

Para criar a pasta dentro de uma pasta existente, inclua este campo com o ID da pasta existente. parentFolderId e parentFolderPath não podem ser definidos ao mesmo tempo.

parentFolderPath
No

Para criar a pasta dentro de uma pasta existente, inclua este campo com o caminho da pasta existente. parentFolderId e parentFolderPath não podem ser definidos ao mesmo tempo.

JSON
//Example request body of POST request to /files/v3/folders
{
  "name": "myNewFolder",
  "parentFolderId": 12345
}

Alterações na V3

Se estiver usando a versão anterior desta API, a v3 tem as seguintes alterações:

  • Todos os arquivos carregados através da API estarão visíveis no painel de arquivos e no seletor de arquivos. Não é possível criar arquivos ocultos. No entanto, arquivos privados e não indexáveis ainda podem ser criados. 
  • Os arquivos de listagem não retornam arquivos ocultos ou excluídos. No entanto, uma grande variedade de filtros pode ser aplicada. Arquivos ocultos ainda podem ser buscados por ID, mas exigem um novo escopo: files_ui_hidden.read.
  • Vários arquivos não podem ser carregados com uma única solicitação. 
  • Ações de atualização de pasta, como mover e renomear, são agora assíncronas. Cada solicitação retornará um token que pode ser usado para verificar o status da edição da pasta.
  • Endpoints que criam ou substituem arquivos exigem o fornecimento de níveis de acesso para os arquivos. Esses níveis de acesso são:
    • PUBLIC_INDEXABLE: o arquivo está acessível publicamente a qualquer um que tenha o URL. Os mecanismos de pesquisa podem indexar o arquivo.
    • PUBLIC_NOT_INDEXABLE: o arquivo está acessível publicamente a qualquer um que tenha o URL. O cabeçalho X-Robots-Tag: noindex será enviado sempre que o arquivo for recuperado, instruindo aos mecanismos de pesquisa que não indexem o arquivo.
    • PRIVATE: o arquivo não está acessível publicamente. Requer um URL assinado para exibir o conteúdo. Os mecanismos de pesquisa não podem indexar o arquivo.
  • Endpoints que criam arquivos possibilitam um nível de pontuações duplicadas como parte das opções de upload do arquivo. 
    • ENTIRE_PORTAL: procure um arquivo duplicado na conta.
    • EXACT_FOLDER: procura um arquivo duplicado na pasta fornecida.
    • NONE: não execute qualquer validação de arquivos duplicados.
    • REJECT: rejeite o upload se um arquivo duplicado for encontrado.
    • RETURN_EXISTING: se um arquivo duplicado for encontrado, não faça o upload de um novo arquivo, retorne o encontrado.
    • A detecção de duplicata funciona em duplicateValidationScope, o que afeta como procurar uma duplicata.
    • Isso também exige um duplicateValidationStrategy, que instrui o que acontece se um arquivo duplicado for encontrado.

Este artigo foi útil?
Este formulário deve ser usado apenas para fazer comentários sobre esses artigos. Saiba como obter ajuda para usar a HubSpot..