Skip to main content
TroopyDocs
Open Troopy
Troopy

API reference / Brain

Take back saying a note is wrong

Takes back your own mark on a note you said was wrong: it is back in search unless a newer note replaced it. Someone else's mark is refused with 403; restore the note to clear it.

delete/api/v1/brain/sources/{id}/wrong

Authorization

HeaderAuthorization: Bearer <API key>
Or the headerX-API-Key: <API key>
API keyMake one in Troopy under Settings > API keys. It acts as you, in its workspace.

Other ways to call it

CLItroopy brain unwrong
MCP toolNone. Call it over REST or with the CLI.
Rate limit30 calls in 60 seconds, for each key
RetriesSend an Idempotency-Key header. A retry with the same key gets the first answer back, and the operation runs one time.

Path parameters

id*string

A 24-character id

Response

200 · application/json
data*object
16 properties
id*string

A 24-character id

kind*enum<string>

Where the text came from: a web page, an uploaded file, a note, a teammate's run, or a canvas (its words, kept current by Troopy)

webuploadnoteruncanvas

title*string
uri*string | null
createdAt*string

ISO 8601 date and time

by*object

Who wrote it

3 properties
type*enum<string>

personagentapi

id*string
name*string
private*boolean

One of your own notes: a fact about yourself you told a teammate in a chat you started. Kept out of the shared brain: no teammate reads it, and only you see it

saidBy*object | null

A note a teammate learned: the person who said it

2 properties
id*string

A 24-character id

name*string
confirmations*integer

How many times the same note was said again

supersededBy*string | null

The newer note that made this one untrue: it is out of search until restored

wrong*object | null

A person said this note is wrong (from a teammate's answer that relied on it): out of search until restored

3 properties
by*object

Who wrote it

3 properties
type*enum<string>

personagentapi

id*string
name*string
at*string

ISO 8601 date and time

userId*string

A 24-character id

origin*object | null

A fact that a teammate read in a document: the doc or the source, its kind, and its title when the teammate read it

4 properties
type*enum<string>

docsource

id*string

A 24-character id

kind*string
title*string
endedAt*string | null

A fact whose paragraph left its document, or whose time ended: out of search

challengedBy*string | null

A document says otherwise: the fact that says it. Still true? asks the person who said this note

derivedFrom*array<string> | null

A fact that the troop inferred: the notes that it follows from. It ends when one of them ends

text*string

Errors

400 invalid_inputFix the field named in detail. Each operation's schema is in /api/v1/openapi.json.
401 unauthorizedSend an API key as `Authorization: Bearer tr_live_...`. Create one in Troopy under Settings.
403 forbiddenThe key lacks a scope this operation needs, or its owner lacks the role. detail says which; create a key with the scope, or ask an organization owner or admin.
404 not_foundCheck the path and any id in it. Every operation is listed in /api/v1/openapi.json.
409 conflictThis Idempotency-Key was used for a different request, or that request is still running. Use a new key for a new request.
429 rate_limitedWait the number of seconds in Retry-After, then retry.