---
title: "Agent check-in: presence and the folders it can see"
method: PUT
path: "/v1/source-connections/agents/{agentId}"
tags: ["Source Plane"]
---

# Agent check-in: presence and the folders it can see

`PUT /v1/source-connections/agents/{agentId}`

## Request

- Base URL: `https://brain.inite.ai`
- URL: `https://brain.inite.ai/v1/source-connections/agents/{agentId}`
- Auth: HTTP bearer

Sent by the agent on every pass: its version, hostname, platform and the directories under its roots (names only, depth-bounded). Presence for the operator, an inventory for the folder picker. The local agent’s wire (docs/source-plane.md § Agent): the connector runs on the agent’s machine, the engine keeps the books here. Scope brain:write — a tenant write key, never an admin one; it reaches only the connections an operator pointed at its host (`host: agent:<id>`). Source plane operator surface (docs/roadmap/raw-evidence-sources-2026-09.md) — answers a bare 404 until `SOURCE_PLANE_ENABLED=1`.

Required scope: `brain:write`.

## Path parameters

- `agentId` string, required

## Request body

- AgentInventory
  - `databases` string[]
  - `hostname` string
  - `platform` string
  - `roots` object[], required
    - `folders` string[], required
    - `path` string, required
  - `version` string

## Response `200`

Recorded.

- object
  - `ok` boolean

## Other responses

- `400`: Validation failed.
- `401`: Missing or unknown bearer key.
- `403`: The key lacks the required scope.

---

[API](https://skmtc.dev/inite/apis/inite-brain-platform-api.md) · [All operations](https://skmtc.dev/inite/apis/inite-brain-platform-api/llms.txt) · [OpenAPI document](https://skmtc.dev/inite/apis/inite-brain-platform-api/revisions/c7c3eb5e304b?raw)
