Skip to main content
TroopyDocs
Open Troopy
Troopy

API reference / Analytics

Change a chart note

Changes a note's text or time.

patch/api/v1/analytics/notes/{id}

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 analytics notes update
MCP toolNone. Call it over REST or with the CLI.
Rate limit60 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

Body

application/json
textstring

At least 1 characters · At most 500 characters

atstring

When it happened: an ISO time, or YYYY-MM-DD for that day's midnight in the workspace's time zone

Response

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

A 24-character id

text*string
at*string

ISO 8601 date and time

author*object
2 properties
type*enum<string>

personagentapigithubxreddit

name*string
commit*object | null

A commit that Troopy synced from GitHub. null for a note that someone wrote

6 properties
sha*string
repo*string
branch*string
url*string
additions*integer
deletions*integer
mention*object | null

For a post on X or Reddit that named the site. null for the other notes

5 properties
platform*enum<string>

xreddit

url*string
where*string | null

The subreddit, for Reddit

score*integer

Likes on X, upvotes on Reddit

comments*integer

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.