Write an app file
<Info>This API is in beta. Endpoints, fields, and behavior may still change, so avoid depending on it in production.</Info>
Writes a whole file into the app's sandbox, creating it or replacing it.
Every sandbox-bridge endpoint runs against the app's live sandbox, the same filesystem the Base44 builder edits, so a change here is visible in the builder immediately.
The default refuses to clobber: writing a path that already exists answers 409 unless you send overwrite: true. Read created and overwritten on the response to see which happened.
content cannot be empty. The builder's write path reads empty content as a delete, so this endpoint rejects it rather than deleting a file behind a write call. To create an empty file, run touch through Run a sandbox command; to change part of a file, use Edit an app file, which is cheaper than sending the whole thing.
Base44 refuses paths outside the app and a set of protected paths, both with a 400. A file over the 6 MB cap answers 413.
This endpoint is limited to 60 requests per minute per app, shared with the other sandbox-bridge endpoints that change files.
<Warning>A write is committed, not checkpointed. Only checkpoints appear in the builder's version history, and a Restore or Revert there rolls the app back to the last checkpoint and discards everything written after it. Call Create a sandbox checkpoint when you finish a unit of work and before you stop.</Warning>
<Note>The sandbox bridge needs a Builder plan or higher on the app's workspace, and answers 402 below that. Workspace API keys are not authorized and are rejected with a 403, and it is unavailable for agent apps. A personal API key works as-is. An OAuth access token needs the sandbox:write scope.</Note>
<Tip>Every error response carries a stable extra_data.code alongside the human-readable message. Branch on the code rather than on the message text or the status.</Tip>
Path parameters
ID of the app whose sandbox to operate on.
ID of the app whose sandbox to operate on.
Request body
Response
The file was written.
Example response
{
"path": "src/pages/About.jsx",
"bytes_written": 214,
"created": true,
"warnings": []
}Changes
Changed in 2 of the 14 revisions of this API.2
- ○
added the new optional request property
new-optional-request-property
- ○
- ○
endpoint added
endpoint-added
- ○