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

# Criar ou atualizar arquivo ou pasta da aplicação

> Cria ou atualiza um arquivo ou pasta de uma aplicação pelo seu ID.

**id** `string` *required*

O ID da aplicação na qual o arquivo ou pasta será criado ou atualizado. Se a aplicação pertencer a um workspace, informe o ID dele no parâmetro de query `workspace_id`.

**workspace\_id** `string`

Se a aplicação pertencer a um workspace, o ID do workspace. Membros com papel de Owner, Admin ou Developer podem usar o gerenciador de arquivos em uma aplicação do workspace que não é deles; sem isso, somente o dono da aplicação pode.

**path** `string` *required*

O caminho onde o arquivo ou pasta será criado ou atualizado. Termine com `/` para criar uma pasta.

**content** `string`

O conteúdo do arquivo a criar ou atualizar. Obrigatório para arquivos; não se aplica a pastas.

**last\_modified** `string`

Timestamp ISO opcional da última data de modificação (mtime) conhecida do arquivo, conforme retornado por [`GET /files/content`](https://docs.vertracloud.app/pt-br/api-reference/endpoint/apps/filemanager/content). Quando informado e não corresponde ao mtime atual do arquivo no disco, o salvamento é recusado com `FILE_MODIFIED` em vez de sobrescrever silenciosamente uma versão mais nova — use isso para detectar conflitos de edição. Omita para salvar sem condições.

**confirm\_detach** `boolean`

Envie `true` para confirmar que a alteração desvincula uma aplicação que veio de um template aberto (ela deixa de receber versões). Sem ele, a requisição não altera nada e responde `409` `TEMPLATE_DETACH_CONFIRMATION_REQUIRED`. Ignorado para outras aplicações. Veja [Desvincular de um template](https://docs.vertracloud.app/pt-br/api-reference/endpoint/templates/detach.md).

### Resposta

Em caso de sucesso, a resposta é `200` com `{ "response": null }`.

```json Response theme={null}
{
  "response": null
}
```

### Respostas de erro

**code** `string`

O código de erro que indica o motivo da falha. Valores possíveis:

* `AUTH_TOKEN_MISSING`, `API_KEY_INVALID`, `SESSION_REVOKED`: o cabeçalho `Authorization` está ausente, a chave de API é inválida ou a sessão do painel foi revogada (`401`).
* `API_KEY_IP_DENIED`, `API_KEY_SCOPE_DENIED`: a chave de API está sendo usada a partir de um IP fora da sua lista de permissões, ou não tem o escopo que a rota exige (`403`).
* `ACCESS_DENIED`: o recurso pertence a outra conta, ou você não tem a permissão do workspace para ele (`403`).
* `FORBIDDEN`: o usuário não tem permissão para acessar a aplicação.
* `APP_NOT_FOUND`: a aplicação especificada não existe.
* `PLAN_RESTRICTED_FEATURE`: o plano do usuário não oferece suporte ao acesso ao gerenciador de arquivos.
* `MISSING_PATH`: o parâmetro de query `path` não foi informado.
* `MISSING_CONTENT`: o parâmetro de corpo `content` é obrigatório para arquivos.
* `INVALID_PATH`: o caminho informado é inválido.
* `TARGET_IS_DIRECTORY`: o caminho já existe como pasta e não pode ser gravado como arquivo.
* `FILE_MODIFIED`: o mtime atual do arquivo não corresponde ao `last_modified` enviado — alguém o alterou desde a última leitura. Recarregue o arquivo antes de salvar de novo.
* `PUT_FILE_FAILED`: falha ao criar ou atualizar o arquivo ou pasta.
* `OWNER_APP_WITHOUT_LIMITS`: os limites do plano do dono não foram encontrados.
* `TEMPLATE_DETACH_CONFIRMATION_REQUIRED`: a alteração desvincularia a aplicação do seu template e `confirm_detach` não foi enviado (`409`). Nada foi alterado.

**message** `string`

Uma mensagem descritiva com detalhes adicionais sobre o erro.

```json Error Response (403) theme={null}
{
  "code": "ACCESS_DENIED"
}
```

```json Error Response (404) theme={null}
{
  "code": "APP_NOT_FOUND"
}
```

```json Error Response (409) theme={null}
{
  "code": "FILE_MODIFIED",
  "message": "File was modified since it was last read"
}
```

```json Error Response (400) theme={null}
{
  "code": "TARGET_IS_DIRECTORY"
}
```

```json Error Response (400) theme={null}
{
  "code": "MISSING_PATH",
  "message": "Path query parameter is required"
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.