Notes on charts
A chart shows that something changed and never why. A note is a dated sentence pinned to your site, drawn as a marker on the Overview chart and on a goal’s completions trend where it happened, so a spike next week still reads “Launched on Product Hunt” and a dip reads “Deployed v2”.
Adding one
On the Overview, the chart’s title row has + Add note. Write the sentence, up to 140 characters, and set when it happened; the time is in the site’s timezone and defaults to now. The same control sits on a goal’s Completions chart. Notes belong to the site, not to a chart: one added from the goal page shows on the Overview too.
What it marks
A marker is a faint dashed line from the axis with a dot at the top. The notes in the range are listed under the chart with their dates, and the tooltip over a day repeats the notes that fall in it. Notes in the same day (or hour, or week, depending on the range) share one marker. Notes outside the range are not drawn. The chart’s title row says how many notes are in the range and links to the full list.
Editing and deleting
Settings → Notes lists every note, newest first, with when it marks and who wrote it. Edit opens the same form; Delete asks once, then removes it for good. There is no history: a note is small enough to retype.
From a deploy pipeline
A pipeline or an agent pins a note with an API key that has Write notes on charts checked. The note is signed with the key’s name, so the list says “key: Deploy pipeline”.
curl -X POST https://lynq.byharsh.com/api/notes \
-H "Authorization: Bearer $LYNQ_API_KEY" \
-H "Content-Type: application/json" \
-d '{"text": "Deployed v2.4"}'at is optional and takes an ISO instant or epoch milliseconds; without it the note marks the moment it arrived. The response is 201 with the note’s id and at. To retract one:
curl -X DELETE https://lynq.byharsh.com/api/notes/123 \
-H "Authorization: Bearer $LYNQ_API_KEY"A GitHub Actions step, for example, after the deploy job:
- name: Pin a note in Lynq
if: success()
run: |
curl -sS -X POST https://lynq.byharsh.com/api/notes \
-H "Authorization: Bearer ${{ secrets.LYNQ_API_KEY }}" \
-H "Content-Type: application/json" \
-d "{\"text\": \"Deployed ${GITHUB_SHA::7}\"}"Requests carrying a browser Origin are refused, so a key that leaks into front-end code cannot write notes from a page. A wrong key gets 401, a key without the scope 403, a note longer than 140 characters 400 with the reason.