`POST /v1/apps/{app_id}/fcp` — text-in, text-out.
POST /v1/apps/{app_id}/fcp
Parameters
Section titled “ Parameters ”Path Parameters
Section titled “Path Parameters ”App ID
Request Body required
Section titled “Request Body required ”Plain UTF-8 text, or application/json of shape {"message": "..."}. Maximum 256 KiB.
Responses
Section titled “ Responses ”Agent reply as Markdown. The Set-Cookie: fcp_session=... header is emitted so subsequent POSTs can resume the same conversation.
Malformed body. Distinct messages for empty body, non-UTF-8 bytes, and JSON that did not parse into the expected shape — each Markdown body points back at the handshake.
Token required but missing or wrong. Markdown body explains both accepted headers (Authorization: Bearer and X-Everruns-FCP-Token) and points at the handshake.
Same generic 404 as the handshake — operator state is never disclosed.
FCP session expired. Body tells the client to drop the fcp_session cookie and POST again.
Body exceeds 256 KiB.
Per-app FCP rate limit exceeded. Retry-After: 60 header is set.
Agent did not reply within the configured timeout. The same fcp_session cookie is set so the client can retry the same conversation.