> ## Documentation Index
> Fetch the complete documentation index at: https://docs.replit.com/llms.txt
> Use this file to discover all available pages before exploring further.

# App Storage

> Aprenda como usar o App Storage para hospedar e gerenciar uploads de arquivos como imagens, vídeos e documentos.

O App Storage é o armazenamento de objetos integrado do Replit que permite que seu app hospede e salve facilmente uploads como imagens, vídeos e documentos.
Buckets são contêineres para armazenar objetos, como arquivos. Eles incluem políticas de acesso para limitar quais ações usuários ou aplicações podem executar sobre seu conteúdo.

<Info>
  Renomeamos o <strong>Object Storage</strong> para <strong>App Storage</strong>. A funcionalidade não mudou e seus buckets, permissões e acesso programático existentes devem continuar funcionando.
</Info>

Com o App Storage, você pode criar apps como:

* **Plataformas de compartilhamento de fotos**: permita que criadores façam upload, armazenem e exibam imagens
* **Serviços de streaming de vídeo**: gerencie uploads de vídeo e forneça conteúdo aos espectadores
* **Sistemas de gerenciamento de documentos**: armazene e organize arquivos de criadores com acesso seguro
* **Sites de portfólio**: exiba trabalhos com arquivos de mídia que carregam de forma confiável
* **Serviços de backup de arquivos**: forneça aos criadores armazenamento em nuvem para seus arquivos importantes

<Frame>
  <img src="https://mintcdn.com/replit/jSmYU1wBTvl8UMyc/images/cloud-services/object-storage-overview.jpg?fit=max&auto=format&n=jSmYU1wBTvl8UMyc&q=85&s=c53aad8c878144b598254a49ae090bc2" alt="captura de tela da ferramenta App Storage" width="1920" height="1080" data-path="images/cloud-services/object-storage-overview.jpg" />
</Frame>

<Note>
  Peça ao **Agent** para adicionar App Storage ao seu app com detalhes sobre quais tipos de arquivo seu app deve gerenciar. O Agent configurará a integração, criará os buckets necessários e atualizará seu app para fazer upload, armazenar e recuperar arquivos com recursos avançados como autenticação e controles de acesso.
</Note>

A ferramenta App Storage permite que você compartilhe dados perfeitamente entre
seus ambientes de desenvolvimento e produção ou com outros Replit Apps.

## Recursos

<Info>
  O App Storage é baseado no Google Cloud Storage (GCS).
  Isso significa que você recebe os benefícios de disponibilidade,
  tempo de atividade e segurança líderes do setor.
</Info>

O App Storage oferece os seguintes recursos para seus Replit Apps:

* **Armazenamento em nuvem persistente**: armazene arquivos que permanecem acessíveis ao seu app publicado e aos usuários
* **Gerenciamento de arquivos escalável**: atenda às necessidades crescentes de dados sem se preocupar com limites de armazenamento
* **Compartilhamento de dados entre apps**: compartilhe buckets entre vários Replit Apps para arquiteturas distribuídas
* **Acesso programático**: faça upload, download e gerencie arquivos usando APIs intuitivas
* **Integração avançada com o Agent**: deixe o Agent configurar o App Storage com configurações avançadas, inspecionar configurações existentes e gerar código completo de back-end e front-end com autenticação e controles de acesso

Aqui estão algumas maneiras de usar o App Storage nos seus Replit Apps:

* Armazenar fotos de perfil de criadores e uploads de mídia
* Servir imagens de produtos para sites de e-commerce
* Gerenciar uploads de documentos para envios de formulários
* Criar recursos de compartilhamento e colaboração de arquivos
* Criar sistemas de gerenciamento de conteúdo com bibliotecas de mídia

<Tip>
  **Integração avançada com o Agent**: você pode pedir ao [Replit Agent](/pt/features/agent/overview) para adicionar automaticamente o App Storage aos seus apps! O Agent agora pode configurar o armazenamento de objetos, inspecionar configurações e gerar código completo de back-end e front-end com recursos avançados como autenticação e controles de acesso. Basta mencionar "App Storage" ou "armazenamento de arquivos" no seu prompt.

  <AiPrompt>Add App Storage to my app to store files</AiPrompt>
  <AiPrompt>Create a photo gallery app with App Storage for images</AiPrompt>
  <AiPrompt>Set up App Storage with authentication for user file uploads</AiPrompt>

  Saiba mais sobre [integrações do Agent](/pt/features/integrations/overview#data-storage--management) e veja todos os prompts de App Storage disponíveis.
</Tip>

## Uso

<Note>
  Seu Replit App precisa se autenticar com o Google Cloud Storage para acessar um bucket e seus objetos.
  Use as bibliotecas de cliente oficiais do App Storage do Replit para autenticar automaticamente.
</Note>

Você pode acessar a ferramenta App Storage diretamente no seu Project Editor.

<Accordion title="Como acessar a ferramenta App Storage">
  No **Tool dock** à esquerda:

  1. Selecione <img class="icon-svg" src="https://mintcdn.com/replit/X_IP1EeHGm0cA2VA/images/icons/workspace-all-tools-button.svg?fit=max&auto=format&n=X_IP1EeHGm0cA2VA&q=85&s=579643854fb13c402de516695e52c554" alt="Ícone de todas as ferramentas" width="16" height="16" data-path="images/icons/workspace-all-tools-button.svg" /> **All tools** para ver uma lista das ferramentas do Project Editor.
  2. Selecione <img class="icon-svg" src="https://mintcdn.com/replit/rJldsgYVucXB_6kW/images/icons/object-storage-monoochrome-icon.svg?fit=max&auto=format&n=rJldsgYVucXB_6kW&q=85&s=ab89fc1e797b8471d0a9b6c6231a93ae" alt="Ícone do App Storage" width="16" height="16" data-path="images/icons/object-storage-monoochrome-icon.svg" /> **App Storage**.

  Na **barra de pesquisa**:

  1. Selecione a <img class="icon-svg" src="https://mintcdn.com/replit/X_IP1EeHGm0cA2VA/images/icons/workspace-search-icon.svg?fit=max&auto=format&n=X_IP1EeHGm0cA2VA&q=85&s=d3feed840da2d19e1ee4873d137114dc" alt="ícone de lupa" width="16" height="16" data-path="images/icons/workspace-search-icon.svg" /> lupa no topo para abrir a ferramenta de pesquisa.
  2. Digite "App Storage" para localizar a ferramenta e selecione-a nos resultados.
</Accordion>

Para associar um novo bucket de armazenamento ao seu Replit App, crie um bucket.

<Accordion title="Como criar um bucket">
  Na ferramenta **App Storage**:

  1. Clique em **Create new bucket**.
  2. Digite um nome para o bucket no campo **Name** e selecione **Create bucket**.

  A aba App Storage deve se parecer com a captura de tela a seguir:

  <Frame>
    <img src="https://mintcdn.com/replit/jSmYU1wBTvl8UMyc/images/databases/object-storage-empty-bucket.png?fit=max&auto=format&n=jSmYU1wBTvl8UMyc&q=85&s=d3ac92cbf149819e34c5a770bc71401b" alt="captura de tela da ferramenta App Storage" width="2790" height="1218" data-path="images/databases/object-storage-empty-bucket.png" />
  </Frame>

  Para criar buckets adicionais, abra o menu suspenso de buckets no canto superior esquerdo da aba **App Storage** e selecione **Create new bucket**.
</Accordion>

As seções a seguir explicam as opções de gerenciamento de buckets e objetos na ferramenta App Storage.

### Selecionar um bucket

Para alternar entre seus buckets de armazenamento, selecione o menu suspenso no canto superior esquerdo da aba **App Storage**.

O bucket selecionado exibe uma marca de seleção ao lado do seu nome, como mostrado na captura de tela abaixo:

<Frame>
  <img src="https://mintcdn.com/replit/jSmYU1wBTvl8UMyc/images/databases/select-bucket.png?fit=max&auto=format&n=jSmYU1wBTvl8UMyc&q=85&s=e383ae2e2e2c6d4af43922242a6068b8" alt="captura de tela do menu de seleção de bucket" width="1852" height="704" data-path="images/databases/select-bucket.png" />
</Frame>

### Acessar o ID do bucket

Para visualizar o **Bucket ID**, selecione a visualização **Settings** no menu suspenso no topo da aba **App Storage**.
O Bucket ID identifica exclusivamente o bucket, que seu código deve referenciar para realizar uma operação.

Se você tiver vários buckets, selecione o bucket correto no menu suspenso no canto superior esquerdo.

A captura de tela a seguir mostra o Bucket ID do bucket "FileVault Bucket One":

<Frame>
  <img src="https://mintcdn.com/replit/jSmYU1wBTvl8UMyc/images/databases/bucket-id.png?fit=max&auto=format&n=jSmYU1wBTvl8UMyc&q=85&s=dd5593bef5878a96c6972f3cbf94e30d" alt="captura de tela da ferramenta App Storage" width="1596" height="428" data-path="images/databases/bucket-id.png" />
</Frame>

### Fazer upload ou download de objetos

Para fazer upload de um objeto para o bucket selecionado:

1. Navegue até a visualização **Objects** na aba **App Storage**.
2. Selecione <img class="icon-svg" src="https://mintcdn.com/replit/X_IP1EeHGm0cA2VA/images/icons/upload-file.svg?fit=max&auto=format&n=X_IP1EeHGm0cA2VA&q=85&s=8fc9609ec9b854c24c1873e0d544317c" alt="ícone de upload de arquivo" width="16" height="16" data-path="images/icons/upload-file.svg" /> **Upload files**, ou <img class="icon-svg" src="https://mintcdn.com/replit/X_IP1EeHGm0cA2VA/images/icons/upload-folder.svg?fit=max&auto=format&n=X_IP1EeHGm0cA2VA&q=85&s=e35e5e61344451e0e49ddadfd0948b54" alt="ícone de upload de pasta" width="16" height="16" data-path="images/icons/upload-folder.svg" /> **Upload folder** para fazer upload de todos os arquivos de uma pasta.
   Em seguida, selecione um ou mais arquivos para fazer upload na caixa de diálogo de arquivos.
   Alternativamente, arraste um arquivo ou pasta para a área que lista o conteúdo do bucket.

Para fazer download de um objeto do bucket selecionado:

1. Navegue até a visualização **Objects** na aba **App Storage**.
2. Selecione o ícone <img class="icon-svg" src="https://mintcdn.com/replit/rJldsgYVucXB_6kW/images/icons/download-icon.svg?fit=max&auto=format&n=rJldsgYVucXB_6kW&q=85&s=2d532a1cef651ec0c2f06cff8a349b06" alt="ícone de download" width="16" height="16" data-path="images/icons/download-icon.svg" /> de download à direita do arquivo para baixá-lo.

### Organizar objetos em pastas

Para criar uma pasta no bucket selecionado:

1. Navegue até a visualização **Objects** na aba **App Storage**.
2. Selecione <img class="icon-svg" src="https://mintcdn.com/replit/rJldsgYVucXB_6kW/images/icons/create-folder.svg?fit=max&auto=format&n=rJldsgYVucXB_6kW&q=85&s=2c57fa06e09e39c6a127a42d5c858eb8" alt="ícone de criar pasta" width="16" height="16" data-path="images/icons/create-folder.svg" /> **Create Folder** na visualização **Objects**.
3. Digite um nome para a pasta.

Para adicionar objetos a uma pasta na visualização **Objects**, arraste um objeto até a pasta de destino.

Para mover o objeto para uma pasta pai, arraste-o sobre o cabeçalho até o nome da pasta acima da lista de objetos.
A animação a seguir mostra a movimentação do arquivo "product\_demo.mov" da pasta "videos" para a pasta pai "Objects":

<Frame>
  <img src="https://mintcdn.com/replit/jSmYU1wBTvl8UMyc/images/databases/object-move.webp?fit=max&auto=format&n=jSmYU1wBTvl8UMyc&q=85&s=c8a78e46338a230c91fdff178165a39e" alt="animação mostrando a movimentação de um arquivo para uma pasta pai" width="800" height="440" data-path="images/databases/object-move.webp" />
</Frame>

### Excluir objetos ou buckets

<Warning>
  A ação de exclusão é irreversível. Certifique-se de fazer backup de qualquer dado essencial antes de continuar.
</Warning>

Para excluir um objeto permanentemente:

1. Navegue até a visualização **Objects** na aba **App Storage**.
2. Selecione o ícone <img class="icon-svg" src="https://mintcdn.com/replit/X_IP1EeHGm0cA2VA/images/icons/trash-icon.svg?fit=max&auto=format&n=X_IP1EeHGm0cA2VA&q=85&s=031a29f126332bebd5b6a74de4f16e40" alt="ícone de lixeira" width="16" height="16" data-path="images/icons/trash-icon.svg" /> de lixeira
   ao lado do objeto que você deseja excluir.
3. Confirme a exclusão na caixa de diálogo de confirmação.

Para excluir um bucket e todos os objetos que ele contém:

1. Navegue até a visualização **Settings** na aba **App Storage**.
2. Certifique-se de selecionar o bucket que deseja excluir no menu suspenso de buckets no canto superior esquerdo.
3. Selecione <img class="icon-svg" src="https://mintcdn.com/replit/X_IP1EeHGm0cA2VA/images/icons/trash-icon.svg?fit=max&auto=format&n=X_IP1EeHGm0cA2VA&q=85&s=031a29f126332bebd5b6a74de4f16e40" alt="ícone de lixeira" width="16" height="16" data-path="images/icons/trash-icon.svg" /> **Delete Bucket**.
4. Confirme a exclusão na caixa de diálogo de confirmação.

### Gerenciamento de acesso a buckets

O Replit conecta todos os buckets que você cria à sua conta e os disponibiliza para
todos os seus Replit Apps. O Replit App a partir do qual você cria o bucket
recebe acesso automaticamente.

Você pode controlar quais dos seus Replit Apps têm acesso a um bucket específico, o que permite
compartilhar dados de forma eficiente e segura.

Para conceder ao seu Replit App acesso a um bucket de outro app na sua conta:

1. Selecione <img class="icon-svg" src="https://mintcdn.com/replit/X_IP1EeHGm0cA2VA/images/icons/workspace-search-icon.svg?fit=max&auto=format&n=X_IP1EeHGm0cA2VA&q=85&s=d3feed840da2d19e1ee4873d137114dc" alt="ícone de lupa" width="16" height="16" data-path="images/icons/workspace-search-icon.svg" />
   **Add an existing bucket** no menu de buckets no canto superior esquerdo da aba App Storage.
2. Na caixa de diálogo **Choose a Bucket**, escolha o bucket que deseja adicionar e selecione **Add Bucket to Repl**.

<Frame>
  <img src="https://mintcdn.com/replit/jSmYU1wBTvl8UMyc/images/databases/choose-bucket-dialog.png?fit=max&auto=format&n=jSmYU1wBTvl8UMyc&q=85&s=5059d4d2490bbe37db80abdb5ac68d84" alt="captura de tela da caixa de diálogo de escolha de bucket" width="1115" height="457" data-path="images/databases/choose-bucket-dialog.png" />
</Frame>

Para revogar o acesso do seu Replit App a um bucket:

1. Navegue até a visualização **Settings** na aba **App Storage**.
2. No menu suspenso de buckets no canto superior esquerdo da aba, selecione o nome do bucket.
3. Selecione **Remove Bucket from Repl** e confirme a remoção na caixa de diálogo de confirmação.

### Acesso programático ao App Storage

Para acessar o App Storage a partir do seu Replit App, use uma das seguintes bibliotecas:

* SDK de App Storage do Replit, disponível para JavaScript e Python
* <a href="https://cloud.google.com/storage/docs/reference/libraries" target="_blank">Biblioteca de cliente do Google Cloud Storage</a>

Para instruções sobre como usar as bibliotecas de cliente, veja os seguintes recursos:

* [JavaScript App Storage SDK](/pt/features/sdks/object-storage-javascript-sdk/): referência de cliente para o SDK de JavaScript
* [Python App Storage SDK](/pt/features/sdks/object-storage-python-sdk/): referência de cliente para o SDK de Python
* [Google Cloud Python SDK example app](https://replit.com/@matt/GCS-Python-Uploads?v=1): faça remix deste app para gerenciar objetos usando o SDK Python do Google Cloud

## Faturamento e uso de recursos

Para monitorar seu uso de App Storage, navegue até a página <a href="https://replit.com/usage/" target="_blank">Usage</a>.

Para saber mais sobre os preços do App Storage, veja [App Storage Billing](/pt/billing/object-storage-billing).
