---
title: "Box Select Folder"
method: PUT
path: "/integrations/box/folder"
tags: ["box"]
---

# Box Select Folder

`PUT /integrations/box/folder`

Persist which folder this tenant's agents are scoped to.

The chosen folder is re-read from Box rather than taken on trust: the
request says what the operator picked, not what is true. That check is also
what catches a folder the grant cannot reach — and a file ID pasted where a
folder ID belongs — before it is stored and discovered later as an opaque
failure inside a tool call. The one exception is the root "0": Box's root
has no record worth reading, and selecting it is the explicit All-files
choice.

## Request body

- BoxFolderSelection — The operator's choice. Re-verified server-side — a request is a choice, not a fact. ``"0"`` is the explicit All-files choice.
  - `folder_id` string, required

## Response `200`

Successful Response

- BoxFolder — One folder the grant can reach, as the picker lists it. Deliberately no ``has_children``: Box's item listing does not carry it, and one extra request per row to decorate a list would be quota spent on nothing — the picker's drill-in simply shows an empty level.
  - `folder_id` string, required
  - `name` string, required

## Other responses

- `400` — Folder cannot be selected
- `401` — Grant no longer valid
- `409` — Not connected, or Box refused the request
- `422` — Validation Error
- `502` — Box unreachable
- `503` — Box not configured

---

[API](https://skmtc.dev/getanana/apis/cleon-api.md) · [All operations](https://skmtc.dev/getanana/apis/cleon-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/getanana/cleon-api/revisions/c0f54348e251/schema)
